通过实例来介绍Flash的绘图指令的使用

2008-04-02 10:56:28来源:互联网 阅读 ()

新老客户大回馈,云服务器低至5折


  

首先介绍一下和直线相关的命令:

  1. 定义直线样式命令:lineStyle(线宽,色彩,透明度)

  2. 移动绘制点命令:moveTo(x,y)

  3. 绘制直线段命令:lineTo(x,y)

  一.绘制一个矩形

  现在用上面介绍的命令在舞台上画一个大小为150*100r矩形。

  新建文档,将舞台大小设为400*300,背景为白色。在第一帧输入代码:

  

stop();

  //配置线条的粗细色彩和透明度;

  _root.lineStyle(2,0xFFCC66,100);

  //配置起点坐标为(50,50);

  (200,50)

  (50,50)

  _root.moveTo(50,50);

  //绘制矩形四个端点;

  _root.lineTo(200,50);

  _root.lineTo(200,150);

  (200,150)

  (50,150)

  _root.lineTo(50,150);

  _root.lineTo(50,50);


  

按快键试试吧,就能够看到一个矩形啦。

  源文档附后:

  二.两点间连线

  这个技巧经常用来制作连线题课件。新建文档后,在舞台中绘制一个圆,并将其转为影片剪辑。实例名为“a”。同样将其复制一个,实例名为“b”。然后在第一帧输入以下代码:

  

stop();

  //创建drawline自定义函数;

  functiondrawline(){

  //先清除画面内容

  _root.clear();

  //配置线条样式

  _root.lineStyle(2,0x33ccFF);

  //设定线条的开始点;

  _root.moveTo(a._x,a._y);

  //绘制直线断,连接两个小球;

  _root.lineTo(b._x,b._y);

  }

  drawline();


  

按快捷键试试,用鼠标连连看,是否有一条线啦?注意元件的注册点应为中央对齐才更逼真哦。

  玩大一点,假如要拖动两上控制点,并且其画线能任意延长,只需稍加一此代码即可。这是加在b上的代码:

  

//按下时拖动小球;

  on(press){

  this.startDrag(true);

  }

  //放松时停止拖动;

  on(release){

  this.stopDrag();

  }

  //当鼠标在b上移动时运行其中的代码;

  onClipEvent(mouseMove){

  //调用函数drawline开始绘制直线;

  _root.drawline();

  //强制刷新画面;

  updateAferEvent();

  }


  

加在a上的代码相同,有兴趣您能够一试。

  三.线条画板

  先绘制一个简单的线条画板。新建文档,在时间轴的第一帧加入以下代码:

  

stop();

  createEmptyMovieClip("drawline",1);

  drawline.lineStyle(2,0xFFcc33,100);

  drawline.onMouseDown=function(){

  this.lineTo(_root._xmouse,_root._ymouse);

  }


  

测试动画会发现,在窗口不同位置上单击就能够画出线段来。但还不流畅。要实现画线的流畅,得添加代码啦。继续学习吧。

  四.自由绘画

  新建文档,在第一帧输入以下代码:

  

stop();

  //定义onMouseDown函数

  _root.onMouseDown=function(){

  //设定线条样式

  _root.lineStyle(2,0xcc99FF,100);

  //绘制直线;

  _root.moveTo(_root._xmouse,_root._ymouse);

  //定义变量isdrawing,并赋值为真

  isdrawing=true;

  }

  _root.onMouseMove=function(){

  //假如变量为真

  if(isdrawing==true){

  //绘制直线断

  _root.lineTo(_root._xmouse,_root._ymouse);

  //刷新画面;

  updateAferEvent();

  }

  }

  _root.onMouseUp=function(){

  //设定变量isdrawing的值为假

  isdrawing=false;

  };


  

测试动画,这是能够通过拖放鼠标在窗口中自由地绘制线条。假如在场景中加入一个按钮,在按钮上加以下代码能够随时清除所绘制内容:

  

on(release){

  //清除画面内容;

  _root.clear();

  }


  



标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇: 闪闪烁烁满天星:经典Flash光标跟随效果

下一篇: Flash中响应键盘的一般方法