等速螺线又称阿基米德螺线。它的应用很广泛,在工业设计领域当中有着很重大的贡献。翻开高中课本,这种概念解析就可以看到他的概念定义。这里就不想抛书包了。
今天,我们来创建一条简单的等速螺线。它的公式很简单: ρ=at+P0 ,在特殊的情况下,可以变成 ρ=at。(a>0,t为角度)
有了这个公式,我们可以利用as 绘制函数来描绘一条等速螺线,可以采用两种的方式来制作,一种是三角函数,第二种是极坐标。
我们采用第二种方式来制作。
创建一个螺线类
我们主要涉及到一个坐标转换的问题,极坐标当中采用的转换公式,在Point里面可以找到相关的转换方法,或者我们可以自己写一个也可以
var point:Point=Point.polar(len,j*rad);
一个长度,一个是角度,两者进行转换。
主程序运行:
运行之后,螺线就出来了。
为了加强一个动画感,我们可以借助旋转Y轴来观看这个螺线。
事后,我修改了一些参数,发现了另外一些有趣的图像.通过螺旋线特征,发现图像很有趣
事后之中,我将porlar 第二个参数进行尝试改造,随便输入去,发现一些特征,产生一些意想不到图形效果。
var rad:Number=2*Math.PI/n;
当n值一定的时候,则我们将360度平均分成了2*Math.PI/n; 等分,也就是说,我描点的时候,假设输入了正常的情况,他会出现等速的螺线
var point:Point=Point.polar(len,j*rad); 出现了等速螺线,呈现出一种圆的感觉。
当我改成了这个角度值的时候,发生了变化
var point:Point=Point.polar(len,j*10);
我按 11,12,13,14--n值一直这样填充入去这些数当中,
var point:Point=Point.polar(len,j*11);
var point:Point=Point.polar(len,j*12);
var point:Point=Point.polar(len,j*13);
这样一直实验
结果让我感觉到兴奋,这种螺线会变化出意外的图像,看看下面的情况
这些可能是一种图形美,你会慢慢发现到,变化的情况很多,令人意想不到。可以进行尝试一下。
修改了另外一个参数。变化出来的图像
对程序进行改造:
增加一个可以变化的参数:
public function creatLuoxuan(r:Number,n:int,angle:Number):void
这样就可以变化出很多不错的图形。
按时间间隔来进行转换一些图像。