as3 drawing
...
@author CaTFooD
♥0 |
Line 59 |
Modified 2010-07-14 11:56:51 |
MIT License
archived:2017-03-10 04:56:19
ActionScript3 source code
/**
* Copyright CaTFooD ( http://wonderfl.net/user/CaTFooD )
* MIT License ( http://www.opensource.org/licenses/mit-license.php )
* Downloaded from: http://wonderfl.net/c/mBc6
*/
package
{
import flash.display.Bitmap;
import flash.display.BitmapData;
import flash.display.Sprite;
import flash.events.Event;
/**
* ...
* @author CaTFooD
*/
public class Main extends Sprite
{
private var bitmapData:BitmapData;
private var k:Number = 0;
private var R:Number = 200;
private var beginX:Number = 0
private var beginY:Number = 0;
private var angle:Number = 0;
private var angle_s:Number = 0;
private var s_x:Number = 0;
private var s_y:Number = 0;
public const raids:Number = 180 / Math.PI;
private var g:int;
private var b:int;
private var r:int;
//改这两个
private var r_1:int = 85;
private var r_2:int = 60;
public function Main():void
{
if (stage) init();
else addEventListener(Event.ADDED_TO_STAGE, init);
}
private function init(e:Event = null):void
{
stage.frameRate = 1000;
removeEventListener(Event.ADDED_TO_STAGE, init);
// entry point
bitmapData = new BitmapData(500, 500);
var bitmap:Bitmap = new Bitmap(bitmapData);
this.addChild(bitmap);
r = Math.random() * 255;
g = Math.random() * 255;
b = Math.random() * 255;
addEventListener(Event.ENTER_FRAME, enterframeHandler);
}
private function enterframeHandler(e:Event):void
{
//大圆坐标
beginX = Math.cos(angle_s / raids) * (R-r_1);
beginY = Math.sin(angle_s / raids) * (R-r_1);
s_x = Math.cos((angle-angle_s) / raids) * r_2;
s_y = Math.sin((angle-angle_s) / raids) * r_2;
//bitmapData.setPixel(beginX + 200, beginY + 200, 0xFF0000);
//bitmapData.setPixel(s_x+200, s_y+200, 0x000000);
bitmapData.setPixel(beginX+s_x+200, beginY-s_y+200, (r<<16|g<<8|b));
angle_s += 1;
angle += (R / r_1) * 1;
if (angle_s % 4800 == 0)
{
r = Math.random() * 255;
g = Math.random() * 255;
b = Math.random() * 255;
r_2 += 5;
}
}
}
}