flash on 2015-8-29
♥0 |
Line 66 |
Modified 2015-08-29 23:00:43 |
MIT License
archived:2017-03-30 11:43:43
ActionScript3 source code
/**
* Copyright mutantleg ( http://wonderfl.net/user/mutantleg )
* MIT License ( http://www.opensource.org/licenses/mit-license.php )
* Downloaded from: http://wonderfl.net/c/m08P
*/
package {
import flash.events.MouseEvent;
import flash.text.TextField;
import flash.events.Event;
import flash.display.Sprite;
public class FlashTest extends Sprite {
public function FlashTest() {
deb = new TextField();
deb.mouseEnabled = false;
deb.width=320; deb.height=240;
addChild(deb);
stage.addEventListener(MouseEvent.CLICK, onClick);
stage.addEventListener(Event.ENTER_FRAME, onEnter);
}//ctor
public var deb:TextField;
public var cm:int = 0;
public function onClick(e:MouseEvent):void
{
cm = (cm == 0) ? 1 : 0;
if (cm == 0)
{ v0 = Math.random(); v1 = Math.random(); v2 = Math.random(); }
else
{ m0 = Math.random(); m1 = Math.random(); m2 = Math.random(); }
}//onclick
public var v0:Number = 1;
public var v1:Number = 0;
public var v2:Number = 0;
public var m0:Number = 0;
public var m1:Number = 0;
public var m2:Number = 1;
public function getCol(r:Number, g:Number, b:Number):uint
{
var c:uint;
c = ((r * 255) << 16) | ((g * 255) << 8) | ((b * 255));
return c;
}//getcol
public function onEnter(e:Event):void
{
graphics.clear();
graphics.lineStyle(2, 0);
var c:uint;
c = getCol(v0,v1,v2);
//deb.text = "C: " + c;
graphics.beginFill(c, 1);
graphics.drawCircle(64,64, 40);
graphics.endFill();
c = getCol(m0,m1,m2);
graphics.beginFill(c, 1);
graphics.drawCircle(64+256,64, 40);
graphics.endFill();
graphics.lineStyle();
var kx:Number; var ky:Number; var kz:Number;
var i:int; var t:Number;
for (i=0;i<256;i+=1)
{
t = i / 256;
kx = v0 + (m0-v0) * t;
ky = v1 + (m1-v1) * t;
kz = v2 + (m2-v2) * t;
c = getCol(kx,ky,kz);
graphics.beginFill(c, 1);
graphics.drawRect(i+64, 128+ky*16, 1, 128);
graphics.endFill();
}//nexti
}//onenter
}//classend
}