flash on 2013-11-21
♥0 |
Line 68 |
Modified 2013-11-21 10:32:37 |
MIT License
archived:2017-03-20 03:37:05
ActionScript3 source code
/**
* Copyright Linkforce ( http://wonderfl.net/user/Linkforce )
* MIT License ( http://www.opensource.org/licenses/mit-license.php )
* Downloaded from: http://wonderfl.net/c/bSEP
*/
package {
import flash.geom.Matrix;
import flash.events.Event;
import flash.display.BitmapData;
import flash.display.Bitmap;
import flash.display.Sprite;
public class FlashTest extends Sprite {
public var dimensions:Number = Math.sqrt(24*24+24*24);
public var sprite:Sprite = new Sprite
public var bmpd:BitmapData = new BitmapData(dimensions,dimensions,true, 0x00000000);
public var bitmap:Bitmap = new Bitmap
public var imgCache:Bitmap = new Bitmap;
public var container:Sprite = new Sprite;
public function FlashTest() {
// write as3 code here.
drawMap();
sprite.graphics.beginFill(0xFF0000, 1);
//sprite.graphics.drawCircle(12,12,12);
sprite.graphics.moveTo(0,24)
sprite.graphics.lineTo(12,0);
sprite.graphics.lineTo(24,24);
sprite.graphics.endFill();
bmpd.draw(sprite);
bitmap = new Bitmap(bmpd);
bitmap.x = stage.stageWidth / 2;
bitmap.y = stage.stageHeight / 2;
addChild(bitmap);
imgCache = new Bitmap(bmpd);
container.addChild(imgCache);
imgCache.x = -(imgCache.width / 2);
imgCache.y = -(imgCache.height / 2);
this.addEventListener(Event.ENTER_FRAME, onFrame);
}
public function drawMap():void{
var grid:Sprite = new Sprite;
addChild(grid);
grid.graphics.lineStyle(1, 0xEEEEEE);
var w:Number = 0
var h:Number = 0;
while(h < stage.stageWidth){
h += 10;
grid.graphics.moveTo(0, h);
grid.graphics.lineTo(stage.stageWidth, h)
}
while(w<stage.stageHeight){
w += 10
grid.graphics.moveTo(w,0);
grid.graphics.lineTo(w, stage.stageHeight);
}
var center:Sprite = new Sprite;
center.graphics.beginFill(0xFF00FF, 1);
center.graphics.drawCircle(0,0,2);
center.graphics.endFill();
center.x = int(stage.stageWidth/2)
center.y = int(stage.stageHeight/2)
addChild(center);
}
public var angle:Number = 0;
public function onFrame(e:Event):void{
//bitmap.rotation+= 10
container.rotation = angle;
var bmpd:BitmapData = new BitmapData(dimensions, dimensions, true, 0x00000000);
var matrix:Matrix = new Matrix()
angle++
matrix.rotate(angle * Math.PI / 180);
matrix.translate(imgCache.width/2, imgCache.height/2)
bmpd.draw(container, matrix);
bitmap.bitmapData = bmpd;
}
}
}