上一篇文章,只是简单的求出了抛物线的坐标,而且也不够灵活。如果只是单纯的画线,使用as3自带的curveTo(二次贝塞尔曲线)就已经足够了。

二次贝塞尔曲线演示动画 t in [0, 1]  (图片来源于wiki贝塞尔曲线>>)

as3绘制抛物线(二)

 

下面的例子,根据鼠标的位置,绘制经过指定起始点、结束点和鼠标位置的曲线。

package
   2: {
import flash.display.Sprite;
import flash.events.Event;
   5:     
/**
     * ...
     * @author Meteoric
     */
extends Sprite
  11:     {
private var x0:Number = 100;
private var y0:Number = 400;
private var x1:Number;
private var y1:Number;
private var x2:Number = 500;
private var y2:Number = 400;
  18:         
public function DrawCurveDemo() 
  20:         {
  21:             initView();
  22:         }
  23:         
void
  25:         {
  26:             addEventListener(Event.ENTER_FRAME, onEnterFrameHandler);
  27:             
  28:             onEnterFrameHandler();
  29:         }
  30:         
void 
  32:         {
  33:             x1 = mouseX;
  34:             y1 = mouseY;
  35:             
  36:             graphics.clear();
  37:             graphics.lineStyle(2, 0x3399cc);
  38:             graphics.moveTo(x0, y0);
  39:             graphics.curveTo(x1, y1, x2, y2);
  40:         }
  41:         
  42:     }
  43:  
  44: }

相关文章:

  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-12-19
  • 2022-01-18
  • 2021-06-09
猜你喜欢
  • 2021-09-04
  • 2021-06-13
  • 2022-02-03
  • 2021-10-29
  • 2021-09-13
  • 2021-10-31
相关资源
相似解决方案