In case Flash no longer exists; a copy of this site is included in the Flashpoint archive's "ultimate" collection.

Dead Code Preservation :: Archived AS3 works from wonderfl.net

Bitmap Sequence Motion Sample2

一度はRELATED IMAGESを使ってみたかったので。サンプルです。
時間差をつけてみました。
RELATED IMAGEをクリックして確認してみてください。Bitmap Sequenceになってます。
Get Adobe Flash player
by k3lab 04 Sep 2009
    Embed
/**
 * Copyright k3lab ( http://wonderfl.net/user/k3lab )
 * MIT License ( http://www.opensource.org/licenses/mit-license.php )
 * Downloaded from: http://wonderfl.net/c/xjoL
 */

package {
    /*
    一度はRELATED IMAGESを使ってみたかったので。サンプルです。
    時間差をつけてみました。
    RELATED IMAGEをクリックして確認してみてください。Bitmap Sequenceになってます。
    */
	import flash.display.Bitmap;
	import flash.display.BitmapData;
	import flash.display.Sprite;
	import flash.events.Event;
	import flash.events.TimerEvent;
	import flash.geom.Point;
	import flash.geom.Rectangle
	import flash.utils.Timer;
	import flash.system.LoaderContext;
    import flash.display.Loader;
    import flash.net.URLRequest;
	public class FlashTest extends Sprite {
		private var capture:BitmapData;
		private var captureArr:Array=[]
		private var cnt:int;
		private var sp:Sprite;
		private var timer:Timer;
        private var bd :BitmapData;
		public function FlashTest() {
            Wonderfl.capture_delay( 1 ); 
			var loader :Loader = new Loader;
			loader.load(
			new URLRequest('http://assets.wonderfl.net/images/related_images/7/7f/7fba/7fbae69dd9fbec58c396595b7c50dabd24913c2d'),
			new LoaderContext( true )
			);
			loader.contentLoaderInfo.addEventListener( Event.COMPLETE, function(e :Event) :void {
			bd = new BitmapData(2400,100);
			var bitmap :Bitmap = new Bitmap( bd );
			bd.draw( loader );
			for (var i:int = 0; i < 5; i++) {
				for (var j:int = 0; j < 5; j++) {
					capture = new BitmapData(100, 100, false, 0);
					captureArr.push({bmd:capture,delay:200*(i+j)})
					sp = new Sprite();
					sp.x = -15+(100 * i);
					sp.y = -15+(100 * j);
					addChild(sp);
					sp.addChild(new Bitmap(capture)) as Bitmap;
				}
			}
			addEventListener(Event.ENTER_FRAME, loop);
			timer = new Timer(1000 /35);
			timer.addEventListener(TimerEvent.TIMER,_timer)
			timer.start();
			});
		}
		private function _timer(e:TimerEvent):void {
			for (var i:int = 0; i < 25; i++) {
						(captureArr[i].delay> bd.width-100)?captureArr[i].delay =0:captureArr[i].delay+=100
				}
		}
		private function loop(e:Event):void {
			for (var i:int = 0; i < 25; i++) {
					captureArr[i].bmd.copyPixels(bd, new Rectangle(captureArr[i].delay, 0, 100, 100), new Point(0, 0));
			}
		}
	}
}