学习 Flash 中的 ActionScript 2.0 |
|
|
|
| 动画、滤镜和绘画 > 使用 ActionScript 绘画 > 使用绘制方法绘制直线、曲线和形状 | |||
可以使用 Flash Drawing API 在运行时在舞台上动态创建形状。可以使用这些形状来动态遮罩内容,对其应用滤镜,或者在舞台上为其实现动画效果。还可以使用 Drawing API 创建各种绘画工具,从而允许用户使用鼠标或键盘在 SWF 文件中绘制形状。
绘制直线:
this.createEmptyMovieClip("line_mc", 10);
line_mc.lineStyle(1, 0x000000, 100);
line_mc.moveTo(0, 0);
line_mc.lineTo(200, 100);
line_mc._x = 100;
line_mc._y = 100;
此代码在舞台上的 0,0 与 200,100 之间绘制一条直线。该直线的 _x 和 _y 坐标随后将进行修改,以将直线重新定位在舞台上的 100,100。
若要绘制更复杂的形状,请继续调用 MovieClip.lineTo() 方法来绘制矩形、方形或椭圆,如以下过程所示。
绘制曲线:
this.createEmptyMovieClip("circle_mc", 1);
with (circle_mc) {
lineStyle(4, 0x000000, 100);
beginFill(0xFF0000);
moveTo(200, 300);
curveTo(300, 300, 300, 200);
curveTo(300, 100, 200, 100);
curveTo(100, 100, 100, 200);
curveTo(100, 300, 200, 300);
endFill();
}
此代码使用 Drawing API 在舞台上绘制一个圆形。该圆形只调用 MovieClip.curveTo() 方法四次,因此看上去可能有些扭曲。有关使用 Drawing API 创建圆形的另一个示例,请参见绘制特定形状下的创建圆形的过程,其中的代码对 MovieClip.curveTo() 方法进行了八次调用,以绘制更逼真的圆形。
绘制三角形:
this.createEmptyMovieClip("triangle_mc", 1);
此代码使用 MovieClip.createEmptyMovieClip() 方法在舞台上创建一个空的影片剪辑。新的影片剪辑是现有影片剪辑(在此例中为主时间轴)的子级。
with (triangle_mc) {
lineStyle(5, 0xFF00FF, 100);
moveTo(200, 200);
lineTo(300, 300);
lineTo(100, 300);
lineTo(200, 200);
}
在此代码中,空的影片剪辑 (triangle_mc) 将调用绘画方法。此代码使用 5 像素紫色线绘制三角形,并且不进行填充。
有关这些方法的详细信息,请参见"ActionScript 2.0 语言参考"中 MovieClip 中的相应条目。
在硬盘上的 Samples 文件夹中可以找到范例源文件 drawingapi.fla,该文件演示了如何在 Flash 应用程序中使用 Drawing API。
|
|
|
|