Author Archives: Zevan

Function Chaining & Classes

CLICK HERE TO COPY
Actionscript:

package {

    import flash.display.Sprite;

    public class Chaining extends Sprite{

        public function Chaining(){

              print(n(100).divide(2).plus(2));

              // outputs 52              

              print(n(100).plus(n(10).multiply(2)));

            [...]

Posted in OOP, functions | Tagged , | 2 Comments

Save BitmapData to your HD

CLICK HERE TO COPY
Actionscript:

import com.adobe.images.JPGEncoder;

 

var jpgEncoder:JPGEncoder = new JPGEncoder(80);

var file:FileReference = new FileReference();

var id:int = 0;

 

var bit:BitmapData = new BitmapData(400, 400, false, 0x000000);

addChild(new Bitmap(bit));

 

stage.addEventListener(MouseEvent.CLICK, onClick);

function onClick(evt:MouseEvent):void{

    // draw some perlin noise

    bit.perlinNoise(200,200, 2, Math.random()*100, true, false,0, true);

    //bit.draw(someClip);

    //bit.draw(someVideo);

    id++;

    file.save(jpgEncoder.encode(bit), "image_" +id+".jpg");

}

This snippet uses the as3corelib which you [...]

Posted in BitmapData, misc | Tagged , | 3 Comments

Closed Catmull-Rom

CLICK HERE TO COPY
Actionscript:

var canvas:BitmapData = new BitmapData(400,400,false, 0x000000);

addChild(new Bitmap(canvas));

 

var pnts:Array = new Array();

// make control points

for (var i:int = 0; i<5; i++){

    var t:Number = i * 72 * Math.PI /180;

    pnts.push(dot(200 + 100 * Math.cos(t),200 +100 * Math.sin(t)));  

}

 

addEventListener(Event.ENTER_FRAME, onLoop);

function onLoop(evt:Event):void {

    canvas.lock();

    canvas.fillRect(canvas.rect, 0x000000);

    curve(pnts);

    [...]

Posted in Math, graphics algorithms, setPixel | Tagged , | 2 Comments

Hippopede

CLICK HERE TO COPY
Actionscript:

x=stage.stageWidth/2;

y=stage.stageHeight/2;

var xp:Number = 0, yp:Number = 0;

var r:Number = 0, t:Number = 0;

var speed:Number=.1;

 

var range:Number=.2;

var b:Number = 20;

var a:Number = b * range;

var orbit:Number = 2 * Math.PI + speed;

 

graphics.lineStyle(0,0x000000);

 

addEventListener(Event.ENTER_FRAME, onLoop);

function onLoop(evt:Event):void {

    var sin:Number=Math.sin(t);

    r =  Math.sqrt(4 * b * (a - b * (sin * sin)));

    xp= [...]

Posted in Graphics, Math, motion | Tagged , | Leave a comment