forked from: 三角関数2
残像付けました。draw はやっぱり重いですね
♥0 |
Line 47 |
Modified 2010-10-03 13:54:39 |
MIT License
archived:2017-03-20 09:27:13
ActionScript3 source code
/**
* Copyright nbhd ( http://wonderfl.net/user/nbhd )
* MIT License ( http://www.opensource.org/licenses/mit-license.php )
* Downloaded from: http://wonderfl.net/c/shyf
*/
// 残像付けました。draw はやっぱり重いですね
// forked from kotaro_tan's 三角関数2
package {
import flash.display.Bitmap;
import flash.display.BitmapData;
import flash.display.Graphics;
import flash.display.Sprite;
import flash.events.Event;
import flash.geom.ColorTransform;
public class Math01 extends Sprite {
private var _c:uint = 0;
private var _source:Sprite;
private var _canvas:Bitmap;
private var _bitmapData:BitmapData;
private const TRANSFORM:ColorTransform = new ColorTransform(1, 1, 1, 0.7, 0, 0, 0, 0);
public function Math01() {
addEventListener(Event.ADDED_TO_STAGE, _init);
}
private function _init(e:Event):void {
removeEventListener(e.type, arguments.callee);
_source = new Sprite();
_bitmapData = new BitmapData(stage.stageWidth, stage.stageHeight);
_canvas = new Bitmap(_bitmapData);
addChild(_canvas);
addEventListener(Event.ENTER_FRAME, _ef);
}
private function _ef(e:Event):void {
var g:Graphics = _source.graphics;
g.clear();
g.beginFill(0xFF0000);
g.drawCircle(0+(_c%360), 200+100*Math.cos(Math.PI/180*(_c*3)),3);
g.beginFill(0x006633);
g.drawCircle(0+(_c%360), 200+100*Math.sin(Math.PI/180*(_c*3)),3);
g.endFill();
g.lineStyle(1,0x0000FF);
g.moveTo(0,200);
g.lineTo(600,200);
g.moveTo(0,100);
g.lineTo(600,100);
g.moveTo(0,300);
g.lineTo(600,300);
_c++;
_bitmapData.lock();
_bitmapData.draw(_source);
_bitmapData.colorTransform(_bitmapData.rect, TRANSFORM);
_bitmapData.unlock();
}
}
}