Quantunet.com

My Account

Joins Us
Flash 8 Actionscript 2.0 Knowledgebase
Drawing A Sine Wave II (Using A Custom Function)  

Download .fla

Actionscript

this.createEmptyMovieClip('sinewave_mc',1);
sinewave_mc._x = 40;
sinewave_mc._y = Stage.height/2;

drawSineWave (6, 50, 50, 1, 0, 1, 0x9966FF,
100);

function drawSineWave(points:Number, amplitude:Number, wavelength:Number, frequencey:Number, Phase:Number, lineHeight:Number, lineColor:Number, lineAlpha:Number):Void{

xscale = amplitude;
yscale = wavelength;

sinewave_mc.lineStyle(lineHeight,lineColor,
lineAlpha);

var m1 = yscale/xscale;
var b1 = 0;

for(i = 1; i <= points; i++){

var angle = 2*Math.PI*i/points;
var m2 = yscale/xscale*Math.cos(angle);
var b2 = yscale*(Math.sin(angle) - angle*Math.cos(angle));
var x = (b1 - b2)/(m2 - m1);
var y = m2*x + b2;

if(Math.abs(m1 - m2) < 0.001) {
sinewave_mc.lineTo(xscale*angle, yscale*Math.sin(angle));
}
else {
sinewave_mc.curveTo(x, y, xscale*angle, yscale*Math.sin(angle));
}

m1 = m2;
b1 = b2;
}
}



How The Actionscript Works



© 2008 Quantunet LLC All Rights Reserved | Intellectual Property | Terms of Use | Privacy
Home | About Quantunet | FAQ's | Contact Us