this.createEmptyMovieClip('sinewave_mc',1);
sinewave_mc._x = 40;
sinewave_mc._y = Stage.height/2;
resolution = 6;
xscale = 50;
yscale = 50;
sinewave_mc.lineStyle(1,0xFF0000 ,100);
var m1 = yscale/xscale;
var b1 = 0;
for(i = 1; i <= resolution; i++){
var angle = 2*Math.PI*i/resolution;
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;
}
|