Author Archives: Zevan

Object Argument w/ Defaults

CLICK HERE TO COPY
Actionscript:

var boxDefaults:Object = {x:10, y:10, width:100, height:100, lineThickness:0, lineColor:0x000000, lineAlpha:1, fillColor:0xCCCCCC, fillAlpha:1}

function drawBox(params:Object=null):void {

    var p:Object=setDefaults(boxDefaults, params);

    graphics.lineStyle(p.lineThickness, p.lineColor, p.lineAlpha);

    graphics.beginFill(p.fillColor, p.fillAlpha);

    graphics.drawRect(p.x, p.y, p.width, p.height);

}

 

function setDefaults(defaults:Object, params:Object=null):Object {

    if (params==null) {

        params = new Object();

    }

    for (var key:String in defaults) [...]

Posted in dynamic, functions | Tagged , | 3 Comments

Drawing Gears

CLICK HERE TO COPY
Actionscript:

const TWO_PI:Number=Math.PI*2;

// x, y, max radius, notch number

drawVerts(calcGear(200, 200, 50, 9));

 

drawVerts(calcGear(400, 200, 30, 3));

 

drawVerts(calcGear(300, 350, 30, 5));

 

drawVerts(calcGear(400,400, 30, 2));

 

function calcGear(x:Number, y:Number, maxRad:Number, s:int):Array {

    var verts:Array = new Array();

    var step:Number=TWO_PI / (s * 4);

    var mod:Number=0;

    for (var i:Number = 0; i<=TWO_PI; i+=step) {

        [...]

Posted in Graphics | Tagged , | Leave a comment

Plot of sinh()

CLICK HERE TO COPY
Actionscript:

x = stage.stageWidth / 2;

y = stage.stageHeight / 2;

scaleX = scaleY = 3;

 

var t:Number =-5;

var xp:Number = 0;

var yp:Number = 0;

 

addEventListener(Event.ENTER_FRAME, onLoop);

function onLoop(evt:Event):void {

     xp = t;

     yp = sinh(t);

     

    graphics.lineStyle(0,0);

    if (t == -5){

        graphics.moveTo(xp, yp);

    }else{

        [...]

Posted in Math | Tagged , | Leave a comment

Relative Positioning

CLICK HERE TO COPY
Actionscript:

var size:Array = [1, 1.5, .5, 1, .4, 1, 1, 1, .2, 1.1]

var boxes:Array = new Array();

var spacing:Number = 4;

var container:Sprite = Sprite(addChild(new Sprite()));

container.x = container.y = 100;

 

for (var i:int = 0; i<size.length; i++){

    var box:Sprite = makeBox();

    var prev:int = i - 1;

    box.scaleX= box.scaleY = size[i];

    [...]

Posted in UI, misc | Tagged , | Leave a comment