使用flash as3代码来画图

使用flash as3代码来画图

ID:9216381

大小:146.33 KB

页数:0页

时间:2018-04-23

使用flash as3代码来画图_第页
预览图正在加载中,预计需要20秒,请耐心等待
资源描述:

《使用flash as3代码来画图》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、通过AS3.0可以方便的在场景中绘制各种图形,相对于提前绘制编译好的图形,使用代码绘制图形意为着更小的文件尺寸,更加灵活的绘制和交互性。Flash中的绘图是通过Graphics来实现的,Graphics类是直接继承了Object类,具有很多的绘图方法,大致分为两类:一是定义绘图样式的方法二是用于绘制和清除图形的方法。有关样式的方法包括线条的样式和填充样式两类。有关绘图方法包括绘制和绘制开头两类。绘图:通过Shape对象的graphics属性来执行矢量绘图命令1、使用lineStyle()定义画图的线条样式2、moveTo()-设

2、置当前绘画点;lineTo()-以当前绘画点为起点,用当前定义的线条样式,画一条直线到目标点;curveTo()-指定二次贝塞尔曲线的控制点和终点,从而完成曲线的绘制;drawRect()-绘制矩形;drawCircle()-绘制圆形;drawEllipse()-绘制椭圆;3、beginFill()和endFill()用于填充他们之间所绘制的图形。beginGradientFill和endFill()用于渐变填充对应的方法。转换:通过设置对象的transform.matrix属性,对其做相应的转换Matrix.rotate()-

3、旋转的角度Matrix.translate()-平移的距离Matrix.scale()-缩放的比例Matrix.b-将矩阵垂直倾斜Matrix.c-将矩阵水平倾斜一般来说要使用类的属性、方法和事件,需要先创建类的实例,但是Graphics类不允许用户自己来创建实例,那么如何使用Graphics类的方法?在显示类Shape类和Sprite类中,有一个Graphics属性,这个属性就是Graphics类的实例。也就是说要使用Graphics类的方法,不能直接创建Graphics类的实例,而是先创建Shape类或Sprite类的实例,

4、此时的显示实例就具有Graphics,而Graphics属性是Graphics类的实例,通过Graphics属性就可以调用绘图的方法。另外,由于MovieClip类继承了Sprite类,所以也可以在MovieClip类的实例中绘图。在实际应用中应该使用Shape类来绘制图形,因为Shape类只有graphics属性和构造方法,所以绘制图形的效率更高。只有需要图形的交互功能时,再使用Sprite类和MovieClip类。编写绘图代码也要讲技巧如三角形的代码:(使用前80后的绘制三角形代码)this.graphics.lineSty

5、le(2,0x990000,.75);this.graphics.beginFill(0x00FF00);this.graphics.moveTo(100,200);this.graphics.lineTo(200,100);this.graphics.lineTo(0,100);this.graphics.lineTo(100,200);代码中的this引用主时间轴,主时间轴是MovieClip类的实例,所以this具有graphics属性,通过点语法就能访问graphics属性。同时,graphics属性又引用Graphic

6、s类的实例,通过点语法就能调用方法。如果像上面的类似代码很多,需要重复编写"this.graphics",这样的代码,而且点语法的运算速度也不是很快。就要对它进行优化。使用with()函数来简化:with(this.graphics){graphics.lineStyle(2,0x990000,.75);graphics.beginFill(0x00FF00);graphics.moveTo(100,200);graphics.lineTo(200,100);graphics.lineTo(0,100);graphics.lin

7、eTo(100,200);}利用with()函数,只需访问一次this.graphics属性,就可以多次调用绘图方法。使用自定义函数简化:drawLine(this.graphics)functiondrawLine(g:Graphics):void{g.lineStyle(2,0x990000,.75);g.beginFill(0x00FF00);g.moveTo(100,200);g.lineTo(200,100);g.lineTo(0,100);g.lineTo(100,200);}代码中定义了drawLine()函数,它

8、带有数据类型为Graphics的参数,表示此参数是Graphics类的实例,通过实例和点语法就可以调用相应的绘图方法。在调用函数时只要把引用Graphics类的实例传递进去。在编写测试绘图代码时,可在主时间轴直接进行。在实际应用中绘图代码最好放在单独的Shape

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。