加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

flash中的碰撞检测

发布时间:2020-12-15 06:48:45 所属栏目:百科 来源:网络整理
导读:package{import flash.display.Bitmap;import flash.display.BitmapData;import flash.display.Sprite;import flash.display.StageAlign;import flash.display.StageScaleMode;import flash.events.MouseEvent;import flash.filters.GlowFilter;import flash
package
{
	import flash.display.Bitmap;
	import flash.display.BitmapData;
	import flash.display.Sprite;
	import flash.display.StageAlign;
	import flash.display.StageScaleMode;
	import flash.events.MouseEvent;
	import flash.filters.GlowFilter;
	import flash.geom.Matrix;
	import flash.geom.Point;
	
	import model.Star;

	public class BitmapCollision1 extends Sprite
	{
		private var bmpd1:BitmapData;
		private var bmp1:Bitmap;
		private var bmpd2:BitmapData;
		private var bmp2:Bitmap;
		
		public function BitmapCollision1()
		{
			stage.align = StageAlign.TOP_LEFT;
			stage.scaleMode = StageScaleMode.NO_SCALE;
			
			//绘制星星
			var star:Star = new Star(50);
			
			bmpd1 = new BitmapData(100,100,true,0);
			bmpd1.draw(star,new Matrix(1,1,50,50));
			bmp1 = new Bitmap(bmpd1);
			bmp1.x = 200;
			bmp1.y = 200;
			addChild(bmp1);
			
			bmpd2 = new BitmapData(100,0);
			bmpd2.draw(star,50));
			bmp2 = new Bitmap(bmpd1);
			bmp2.x = 200;
			bmp2.y = 200;
			addChild(bmp2);
			
			stage.addEventListener(MouseEvent.MOUSE_MOVE,onMouseMoveing);		
		}
		
		private function onMouseMoveing(event:MouseEvent):void {
			bmp2.x = mouseX - 50;
			bmp2.y = mouseY - 50;
			
			//如果发生碰撞
			if(bmpd1.hitTest(new Point(bmp1.x,bmp1.y),255,bmpd2,new Point(bmp2.x,bmp2.y),255)) {
				bmp1.filters = [new GlowFilter()];
				bmp2.filters = [new GlowFilter()];	
			} else {
				bmp1.filters = [];
				bmp2.filters = [];
			}
			//下面是检测一个点是否与一个位图碰撞。
			//if(bitmapDate1.hitTest(new Point(bitmap1.x,bitmap1.y),new Point(mouseX,mouseY))) {
????				//bitmap1.filters = [new GlowFilter()];
???				//} else {
				??//??bitmap1.filters = [];
				//}	
			//}
		
	}
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读