• 【AS3代码】放大镜


    package
    {
        import flash.display.Bitmap;
        import flash.display.BitmapData;
        import flash.display.Loader;
        import flash.display.Sprite;
        import flash.events.Event;
        import flash.events.MouseEvent;
        import flash.net.URLLoader;
        import flash.net.URLRequest;
        
        public class Main extends Sprite
        {        
            private var xiao_tu:Bitmap;        //原小图
            private var da_tu:Bitmap;        //大图
            private var loader:Loader;        //加载图像对象
            private var url:URLRequest;        //图像URL对象
            
            public function Main():void
            {
                init();
            }
            private function init():void
            {
                loader = new Loader();            
                url = new URLRequest("a.jpg");
                loader.load(url);
                loader.contentLoaderInfo.addEventListener(Event.COMPLETE,loadok);
            }
            
            private function loadok(evt:Event):void
            {
                xiao_tu = new Bitmap(evt.target.content.bitmapData);  //把载入的图片放到的原图对象里    
                xiao_tu.width = 400;
                xiao_tu.height = 300;
                this.addChild(xiao_tu);
                
                //创建放大镜的镜片
                var tu:Sprite = new Sprite();
                tu.graphics.beginFill(0x000000);
                tu.graphics.drawCircle(0,0,50);
                tu.graphics.endFill();
                tu.startDrag(true);
                this.addChild(tu);
                
                //绘制大图片
                da_tu = new Bitmap(evt.target.content.bitmapData);
                da_tu.mask = tu;
                this.addChild(da_tu);
                
                stage.addEventListener(MouseEvent.MOUSE_MOVE,onmove);
            }
            
            private function onmove(evt:MouseEvent):void
            {
                da_tu.x = (da_tu.width - 400) * (stage.mouseX / 400) * -1;
                da_tu.y = (da_tu.height - 300) * (stage.mouseY / 300) * -1;
            }
        }
    }
  • 相关阅读:
    HDU3145 Max Sum of Max-K-sub-sequence (单调队列模板)
    AcWing1088 旅行问题(单调队列)
    POJ1821 Fence(单调队列)
    POJ1742 Coins(多重背包+二进制优化)
    AcWing217 绿豆蛙的归宿(期望)
    BZOJ.2134.[国家集训队]单选错位(概率 递推)
    洛谷.3805.[模板]manacher算法
    Codeforces.280C.Game on Tree(期望)
    BZOJ.2521.[SHOI2010]最小生成树(最小割ISAP/Dinic)
    洛谷.4172.[WC2006]水管局长(LCT Kruskal)
  • 原文地址:https://www.cnblogs.com/kingfly/p/2554564.html
Copyright © 2020-2023  润新知