forked from: forked from: forked from: forked from: flash on 2010-11-19

by riafeed forked from forked from: forked from: forked from: flash on 2010-11-19 (diff: 8)
複数ロードした画像をまとめてBitmap化したあと、matrixで加工したいのに出来ないです・・。
♥0 | Line 50 | Modified 2011-10-23 05:44:02 | MIT License
play

ActionScript3 source code

/**
 * Copyright riafeed ( http://wonderfl.net/user/riafeed )
 * MIT License ( http://www.opensource.org/licenses/mit-license.php )
 * Downloaded from: http://wonderfl.net/c/aGcH
 */

// forked from riafeed's forked from: forked from: forked from: flash on 2010-11-19
// forked from aruerula's forked from: forked from: flash on 2010-11-19
// forked from 9re's forked from: flash on 2010-11-19
// forked from aruerula's flash on 2010-11-19
package {
    import flash.net.navigateToURL;
    import flash.system.LoaderContext;
    
    //複数ロードした画像をまとめてBitmap化したあと、matrixで加工したいのに出来ないです・・。
    
    import flash.display.Bitmap;
    import flash.display.BitmapData;
    import flash.geom.Matrix;
    import flash.net.URLRequest;
    import flash.events.*;
    import flash.display.Loader;
    import flash.display.Sprite;
    import flash.system.Security;
    public class Main extends Sprite {
        
        private var count:int = 0;
        private var images:Array;
        private var loaders:Array = [];
        
        private const WIDTH:int = 200;
        private const HEIGHT:int = 300;
        private const IMAGE_URL:Array = [
            "http://wonderfl.net/img/top/img_study.gif"

        ];
        
        public function Main() {
            
            images = new Array(IMAGE_URL.length);
            
            //Security.loadPolicyFile("http://farm3.static.flickr.com/crossdomain.xml");
            
            for( var i:int=0; i<IMAGE_URL.length; i++ ){
            var loader:Loader = new Loader();
            loader.contentLoaderInfo.addEventListener(Event.COMPLETE,//init
            function(event:Event):void {
                var loaderB:Loader = new Loader();
                loaderB.contentLoaderInfo.addEventListener(Event.COMPLETE, init);
                loaderB.loadBytes(event.currentTarget.loader.contentLoaderInfo.bytes);
                loaderB.name = event.currentTarget.loader.name;
            });
            //loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, function():void { } );
            loader.load(new URLRequest(IMAGE_URL[i]), new LoaderContext(true));
            loader.name = i.toString();
            }
            
        }
 
 
        private function init(event:Event):void{
            images[event.currentTarget.loader.name] = event.currentTarget.loader;
            
            //if(++count == IMAGE_URL.length ) comp();
            
            var matrix:Matrix = new Matrix();
            
            if(++count == IMAGE_URL.length){
                for (var i:int = 0; i < images.length; i++)
                {
                    var bmd:BitmapData = new BitmapData(images[i].width,images[i].height);
                    images[i].x = 465 / images.length * i;
                    
                    //matrix.scale(-1,1);
                    //matrix.translate(images[i].width,0);
                    
                    //bmd.draw(images[i],matrix);
                    bmd.draw(images[i]);
                    
                    addChild(new Bitmap(bmd));
                }    
            }
           
            //var loader:Loader = event.currentTarget.loader;
            
            //var matrix:Matrix = new Matrix();
            //matrix.scale(WIDTH/loader.width,HEIGHT/loader.height);

            //var bd:BitmapData = new BitmapData(WIDTH,HEIGHT);
            //bd.draw(loader,matrix);
            
            //matrix = new Matrix();
            //matrix.scale(-1,1);
            //matrix.translate(bd.width,0);
            
            //var destbd:BitmapData = new BitmapData(bd.width,bd.height);
            //destbd.draw(bd,matrix);
            //addChild(new Bitmap(destbd));
        }
        
        //private function comp():void{

      
        //}

    }
}