zoukankan      html  css  js  c++  java
  • 【AS3代码】精确到点的不规则图形碰撞检测

    package
    {
        import com.ui.Star;
        
        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;
        
        public class Main extends Sprite
        {
            private var bmpd1:BitmapData;
            private var bmp1:Bitmap;
            private var bmpd2:BitmapData;
            private var bmp2:Bitmap;
            
            public function Main():void
            {            
                init();
            }
            private function init():void
            {
                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,0,0,1,50,50));
                bmp1 = new Bitmap(bmpd1);
                bmp1.x = 200;
                bmp1.y = 200;
                this.addChild(bmp1);
                
                bmpd2 = new BitmapData(100,100,true,0);
                bmpd2.draw(star, new Matrix(1,0,0,1,50,50));
                bmp2 = new Bitmap(bmpd2);
                this.addChild(bmp2);
                
                stage.addEventListener(MouseEvent.MOUSE_MOVE, onMouseMoving);
            }
            private function onMouseMoving(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 = [];
                }
            }
        }
    }
  • 相关阅读:
    虚拟机docker开启服务,本地无法进行访问
    make编译提示:make cc Command not found 解决办法
    yum -y install git 无法安装...提示There are no enabled repos.
    linux 安装mysql
    linux 配置环境变量
    HTML5第三天 无序有序列表、相对绝对路径
    JavaScript第一天
    HTML第二天
    mysql流程控制语句
    mysql存储过程和函数
  • 原文地址:https://www.cnblogs.com/kingfly/p/2606157.html
Copyright © 2011-2022 走看看