WEB开发网
开发学院图形图像Flash 第三章 三角学应用Ⅱ [FL 基理译] 阅读

第三章 三角学应用Ⅱ [FL 基理译]

 2009-05-30 12:08:41 来源:WEB开发网   
核心提示: 原理是一样的,centerScale表示100%的缩放比,第三章 三角学应用Ⅱ [FL 基理译](2), range 表示范围, speed 表示速度,就像只虫子在房间里飞,虽然这些数字都是预先定义好的,不仅如此,正弦波还在 alpha

原理是一样的,centerScale表示100%的缩放比, range 表示范围, speed 表示速度。不仅如此,正弦波还在 alpha,rotation 等属性中应用。

双角波形

再给大家一种思想:设置两套数值 angle1 和 angle2,为它们各自增加一个中心点(center)和速度(speed)值。用一个正弦波作为一种属性,另一个正弦波作为另一种属性,比如位置或缩放。我不敢保证能够得到什么有用的结果,但这样做的话,就等于让这些函数自由发挥作用。

从 Random.as 文档类开始,这里面拥有两个角度(angle),两个速度(speed)和两个中心点(center),将其中一个角(angle1)作为小球的X坐标,另一个角(angle2)作为Y坐标。运行程序时,就像只虫子在房间里飞,虽然这些数字都是预先定义好的,但结果却没有什么规律可言。代码如下:

package {
 import flash.display.Sprite;
 import flash.events.Event;
 public class Random extends Sprite {
  private var ball:Ball;
  private var angleX:Number = 0;
  private var angleY:Number = 0;
  private var centerX:Number = 200;
  private var centerY:Number = 200;
  private var range:Number = 50;
  private var xspeed:Number = .07;
  private var yspeed:Number = .11;
  public function Random() {
   init();
  }
  private function init():void {
   ball = new Ball();
   addChild(ball);
   ball.x = 0;
   addEventListener(Event.ENTER_FRAME, onEnterFrame);
  }
  public function onEnterFrame(event:Event):void {
   ball.x = centerX + Math.sin(angleX) * range;
   ball.y = centerY + Math.sin(angleY) * range;
   angleX += xspeed;
   angleY += yspeed;
  }
 }
}

上一页  1 2 3 4 5 6 7  下一页

Tags:第三章 三角学 应用

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接