一,数学
直线方程: y=f(x); Ax+BY+C=0;
斜截式:y=kx+b;
点斜公式:y-y1=k(x-x1);
斜率公式: k=y-y1/(x-x1);
截距式:x/a+y/b=1;
直线的参数方程:
它的推算: 点斜公式:y-y0=tg(a)(x-x0);转换为参数方程。
第一步: (y-y0)/sin(a)=(x-x0)/cos(a);
第二步:设置参数两边T
(y-y0)/sin(a)=t;
(x-x0)/cos(a)=t;
第三步:转换
x=x0+t*cos(a);
y=y0+t*sin(a);
二:利用直线方程来创作
第一步:创建一个名为Ball的小球,链接Ball类。
第二步:复制n个球在我们的场景上,并初始化小球的坐标
假设我们设置为20
list为数组,使用数组来管理我们创建的ball 实例。指定初始化位置 x和y
然后分布小球成一条直线:这里是从第二小球开始分布,也就是说数组的list【1】这个实例来分布它的位置,他的位置以前一个实例为基础,每一个小球和是前一个小球都相差 x轴为20,y轴为15
第三步:产生动画
为了使复制的物体能够产生效果,我们加人了rotation这个属性,让其产生角速度变化
addEventListener(Event.ENTER_FRAME,Run);
这样一个效果就出来了。
三:改造算法
把上面的一些琐碎的代码再缩成为一个参数方程
这样的话同样可以得到上面的结果,反而代码要求简化了很多。
当i=0的时候,第一个小球list【0】的坐标为(50,60)
当i=1的时候,第二个小球list【1】的坐标就应该参数第一个进行斜率运算。倾斜30度,运行i*20的线段。这样就到达了第二点的位置。
当i=2的时候.....
.................
..........z直到最后。
这个很类似一个速度的分量公式
vx=speed*cos(a);
vy=speed*sin(a);
这样就是我们一个物理经常要用到的公式。速度分量的应用。