手机站
网通分站
电信主站
密 码:
用户名:
当前位置 : 主页>网页制作>Flash>列表

Flash编程绘画的简单运用

来源:互联网 作者:west263.com 时间:2008-04-02
西部数码-全国虚拟主机10强!40余项虚拟主机管理功能,全国领先!双线多线虚拟主机南北访问畅通无阻!免费赠送企业邮局,.CN域名,自助建站480元起,免费试用7天,满意再付款! P4主机租用799元/月.月付免压金!

  Flash MX又增强了其绘图功能,现在,能够使用AS影片对象中的绘画方法让Flash根据程式绘制图像,十分的方便。本文中笔者将通过几个实例来给大家讲解如何使用绘画方法来绘制图像及其相关的知识和技巧。

  效果预览:

  

  

  


  为了使读者很好的理解下面的内容,我们先来做一个简单的例子――画一条直线。可能有的朋友会说,画一条直线谁不会啊。不是的,是让Flash自己画一条直线。

  打开Flash,点选第1帧,按F9打开“动作面板”,输入如下代码:

  

// 配置线条样式

  _root.lineStyle(3,0xF12345,100);

  // 配置线条起点

  _root.moveTo(50,0);

  // 绘制线条

  _root.lineTo(100,0);

  执行一下代码,您将会看到,Flash自动从点(50,0)开始,到点(100,0)结束,绘制一条线宽为3个像素的红色横线。

  现在,我们深入些,让Flash画一个圆。设计这个实例无需做任何元件,只需要编写几段简单的代码即可。打开Flash MX,分别点选第2、第3帧,按F7插入空白关键帧,如图1所示。

  

  图1

  分别点选第1、2、3帧,按F9打开“动作”面板,键入如下代码。其实,这三帧中的代码能够和到一帧中,但为了能使大家更清楚地了解这些代码是如何工作的,笔者把这些代码拆分开来讲解。

  第1帧代码:

  

// 指定一个线条样式

  i=-Math.PI;

  _root.lineStyle(2,0x000000,50);

  _root.moveTo(50,100);

  代码解析:

  绘画方法lineStyle的用法为myMovieClip.lineStyle ([thickness[,rgb[,alpha]]])。其作用是指定一个线条样式,以便lineTo和curveTo方法的后续调用,直到使用其他参数调用lineStyle为止。也能够在绘制路径的中间调用lineStyle方法来为路径中的不同线条段指定不同的样式。

  其中,thickness是个整数,以磅为单位指示线条的粗细,有效值为0到255。假如未指定数值,或该参数为undefined,则不绘制线条。

  rgb是线条的十六进制颜色值(如,红色为 0xFF0000,蓝色为 0x0000FF)。如未指示该值,则默认使用0x000000(黑色)。

  alpha也是个整数,该参数控制线条颜色的Alpha值,有效值为0到100。假如配置该值,则使用100(纯色)。假如该值小于0,则使用0;假如该值大于100,则使用100。

  绘画方法moveTo的用法是myMovieClip.moveTo (x,y)。其作用是将当前绘画位置移到(x,y),也就是配置绘制图像的原点。假如缺少任何一个参数,则此方法将失败,并且当前绘画位置不改变。参数x(y)是个整数,指示相对于父影片剪辑的注册点的水平(垂直)位置。_root.moveTo(50,100)就是在x坐标为50个单位,y坐标为100个单位的地方作为起点开始绘制图像。

  第2帧代码:

  

// 绘制线条

  _root.lineTo(100 50*Math.cos(i),100 50*Math.sin(i));

  i =0.05;

  代码分析:

  绘画方法lineTo能够使用线条样式从当前绘画位置向点(x,y)绘制线条;当前绘画位置随后被配置为(x,y)。假如正在其中绘制的影片剪辑包含用绘画工具创建的内容,则调用lineTo将在该内容下面进行绘制。假如在对moveTo方法进行任何调用之前调用了lineTo方法,则当前绘画位置默认为(0,0)。假如缺少任何一个参数,则此方法将失败,并且当前绘画位置不改变。参数x(y)是个整数,指示相对于父影片剪辑的注册点的水平(垂直)位置。

  Math.sin(x)计算并返回以弧度为单位指定的角度的正弦值。参数x是以弧度为单位的角度值。

  第3帧代码:

  

// 循环

  if (i
   gotoAndPlay(2);

  } else {

   stop();

  }

  Math.PI是个常数,代表一个圆的周长和其直径的比值的数学常数,也就是3.1415……。

  代码到这里就编写完毕了。当测试的时候,大家能够看到,Flash从点(50,100)开始,绘制一个线宽为2个单位,黑色,半径为50个单位的圆。如图2所示。

  

文章整理:西部数码--专业提供域名注册虚拟主机服务
http://www.west263.com
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!