Flash与数学:球体曲面

来源:互联网 发布:淘宝助手 官网 编辑:程序博客网 时间:2024/05/21 11:24

   对数学这一部分,我越来越喜欢关于flash 和数学的结合。高中的数学,大学的数学都很想很想接触,但是由于高等数学并没学得很好,所以这部分的知识缺少了。今天无意之中,看到球体的参数的方程的时候,让我 兴趣大增了。仔细观看那个参数方程,越发觉他的魅力。

 

球面的公式:x*x+y*y+z*z=a*a;

他的参数方程式:

球体公式(网上转载过来的图)

接下来就需要知道a ,θ, φ 各自的含义,a代表了球体的半径,,参数φ就是地球上的纬度,θ就是经度。这一部知识可以参考

http://baike.baidu.com/view/324915.htm

 

他的范围就是以下:

0≤θ≤2π,0≤φ≤π

他的范围 一个介于360度,一个最大值是介于180度。从这里我们可以借助两个循环来创造下面的程序。

 

球全面

 

 

接下来的程序 采用flash cs4来支持我们这次的程序:我们先创建一个小球的元件,这个小球的元件用于分布其位置 名称为Ball ,他仅仅是一个元件。

小球

 

 

按公式来进行对小球分布,要区别于数学里面y 和z 和flash 坐标系当中的y 和z ,这是因为需要flash 是2d屏幕 空间的坐标不一样。这样模拟出来的球比较偏向数学形状,当然按数学原来公式设定也可以 模拟出来角度就不一样,可以尝试一下。

 

 

主要是采用二维循环来创建,横坐标和纵坐标这样扫描的方式来创造,对于圆柱体也一样适用的。

 

转换一下角度同样效果不一样。这些可以尝试一下。上半球面。

球4

 

下半球面。

球4

 

 

总的代码:

 

 

 

小结:

  对于flash 能够创建如此的程序 我也感觉到惊讶,结合数学一些理论当中,展示出来的形状也呈现出一种美态。大家可以尝试一下,对球体的一些理论依旧可以深入下去。你会发现不仅仅球体,对于你学过的知识也能够发挥出一个不错的效果。

 

不过,不得不提到一点,内存的使用上,付出代价。所以这一部分也需要考虑当中去。如果有好的建议和意见可以留下你的宝贵的意见。