Flash 与数学:星形线
今晚我们来玩玩这种线绘制,星形线。 在大学的里面解析几何当中,把这种曲线叫做四尖点星形线。由于它的形状如星星 称上这个名称也不无道理,看到这种线的时候,你是否会许个愿望呢?一起来吧
星形线公式:
x=a*cos3A
y=a*sin3A
公式很简单,A的角度可以是正无穷 和负无穷之间,(a可以理解为半径) 但是我的做法,理解他为0-360已经足够了。也就是说他旋转一圈。通过绘制这条线,同样我们加入一些线的动画,这样做的好处是增加一些动感性。
程序的思路很简单,我们就按他的提供的公式设计一个绘图程序,它会按顺时针来进行绘制,这是因为flash 的坐标系和我们传统的数学坐标系有区别,顺时针所转换的角度是正的,而传统的则是负的。可以去了解一些这两种坐标系区别。
我们使用描点的方式来进行绘制线,是在flash 里面一个很常用的手法。而你看到的图像,我们可以假设认为是360度描点所得的结果,有兴趣可以继续深入。
下面是代码:
package
{
//星形线动画
// x=a*cos3A
// y=a*sin3A
// 写于2010年4月11日
import flash.display.Sprite;
import flash.events.*;
public class Main extends Sprite
{
private var pen:Sprite=new Sprite();
private var lineMc:Sprite=new Sprite();
private var angle:int=-1;//角度
private var centerX:Number=stage.stageWidth/2;//中心点x位置
private var centerY:Number=stage.stageHeight/2;//中心点y位置
public function Main()
{
init();
}
private function init():void
{
addChild(pen);
addChild(lineMc);
//描绘十字坐标
pen.graphics.lineStyle(1);
pen.graphics.moveTo(centerX,centerY);
pen.graphics.lineTo(centerX,0);
pen.graphics.moveTo(centerX,centerY);
pen.graphics.lineTo(centerX*2,centerY);
pen.graphics.moveTo(centerX,centerY);
pen.graphics.lineTo(centerX,centerY*2);
pen.graphics.moveTo(centerX,centerY);
pen.graphics.lineTo(0,centerY);
addEventListener(Event.ENTER_FRAME,Run);
}
private function Run(event:Event):void
{
lineMc.graphics.clear();
if (angle==-1)
{
var px:Number=centerX+200*Math.pow(Math.cos(angl
相关文档:
var loader:URLLoader = new URLLoader();
loader.addEventListener(ProgressEvent.PROGRESS, handleProgress );
event:ProgressEvent event.bytesLoaded/event.bytesTotal
var streamer:URLStream = new URLStream( );
streamer.addEventListener( ProgressEvent.PROGRESS, handleProgress ......
Are you running your Flex Application and continually getting the error below?
"Flex Builder cannot locate the required version of the Flash Player. You might need to install Flash Player 9 or reinstall Flex Builder. Do you want to try to run your application with the current version?"
Description ......
声音冲突:
调试好计算机以后发现自己的播放器播放音乐的时候打开优酷没有声音,而打开优酷的时候自己的播放器竟然也没有了声音,从网上查到是因为声音冲突抢占声卡的问题。
从首选项中选择音效,把所有的输入模式都改为ALSA就可以把问题解决了。不错吧!
u ......
[原理]
经典物理学认为,物体越过势垒,有一阈值能量;粒子能量小于此能量则不能越过,大于此能量则可以越过。例如骑自行车过小坡,先用力骑,如果坡很低,不蹬自行车也能靠惯性过去。如果坡很高,不蹬自行车,车到一半就停住,然后退回去。
  ......