x1-sinx1)*cosx2-(cosx2*x2-sinx2)*cosx1]/(cosx1-cosx2) anchorx = x+kx*nextx; anchory = y+ky*Math.sin(nextx); // 函数本身 this.curveTo(controlx, controly, anchorx, anchory); if (Math.abs(nextx-endx)<1e-10) { // 画完曲线 break; } beginx<endx ? i++ : i--; curx = nextx; coscx = cosnx; cccsc = cnnsn; nextx = beginx+i*pi_6; } }; wave(0, 300, 100, 100, 0, 1000); ///////////////// 这位大虾最好,已经写好了注解,我就可以少点事情了.呵呵,忘记和板兰根了,等等 效果展示:
//////////////////////////////////////////////////////////////////////////////
下面我详细讲一讲一个线线函数的用法^_^ 首先看看他们的定义: MovieClip.lineStyle
可用*
Flash Player 6。
用法
myMovieClip.lineStyle ([thickness[, rgb[, alpha]]])
参数
thickness 一个整数,以磅为单位指示线条的粗细;有效值为 0 到 255。如果未指定数值,或者该参数为 undefined,则不绘制线条。如果传递的值小于 0,则 Flash 使用 0。数值 0 指示极细的粗细;最大粗细为 255。如果传递的值大于 255,则 Flash 解释程序使用 255。
rgb 线条的十六进制颜色值(例如,红色为 0xFF0000,蓝色为 0x0000FF,等等)。如果未指示该值,则 Flash 使用 0x000000(黑色)。
alpha 一个整数,指示线条颜色的 Alpha 值;有效值为 0 到 100。如果未指示该值,则 Flash 使用 100(纯色)。如果该值小于 0,则 Flash 使用 0。如果该值大于 100,则 Flash 使用 100。
返回
无。
说明
方法;指定一个线条样式,供 Flash 用于对 lineTo 和 curveTo 方法的后续调用,直到使用其他参数调用 lineStyle 为止。可以在绘制路径的中间调用 lineStyle 方法来为路径中的不同线条段指定不同的样式。
注意:调用 clear 会将 lineStyle 方法重置为 undefined。
//////////////////////////////////// MovieClip.moveTo
可用*
Flash Player 6。
用法
myMovieClip.moveTo (x, y)
参数
x 一个整数,指示相对于父影片剪辑的注册点的水平位置。
y 一个整数,指示相对于父影片剪辑的注册点的垂直位置。
返回
无。
说明
方法;将当前绘画位置移到 (x, y)。如果缺少任何一个参数,则此方法将失败,并且当前绘画位置不改变。
///////////////////////////////////////////////////////////////////////// MovieClip.lineTo
可用*
Flash Player 6。
用法
myMovieClip.lineTo (x, y)
参数
x 一个整数,指示相对于父影片剪辑的注册点的水平位置。
y 一个整数,指示相对于父影片剪辑的注册点的垂直位置。
返回
无。
说明
方法;使用当前线条样式从当前绘画位置向 (x, y) 绘制线条;当前绘画位置随后被设置为 (x, y)。如果正在其中绘制的影片剪辑包含用 Flash 绘画工具创建的内容,则调用 lineTo 将在该内容下面进行绘制。如果在对 moveTo 方法进行任何调用之前调用了 lineTo 方法,则当前绘画位置默认为 (0, 0)。如果缺少任何一个参数,则此方法将失败,并且当前绘画位置不改变。
//////////////////////////////////////////////////////////////////////////////////// 画一条直线(线段),置顶其两个断点就ok了 _root.createEmptyMovieClip("ban", 1); ban.onEnterFrame = function() { with (ban) { lineStyle(5, 0x000000, 100); moveTo(100, 100); lineTo(200, 100); } }; *************************************** 画等便三角形就复扎一点点,你要先计算计算---怎么计算? 3的平方根好像大概可能也许是1.732........... _root.createEmptyMovieClip("ban", 1); ban.onEnterFrame = function() { with (ban) { lineStyle(5, 0x000000, 100); moveTo(100, 100); lineTo(100, 200); lineTo(13.4, 150); lineTo(100,100); } };
************************************************** 然后是正方形,没有什么好讲的 _root.createEmptyMovieClip("ban",1); ban.onEnterFrame=function(){ with(ban){ lineStyle(5,0x000000,100); moveTo(100,100); lineTo(200,100); lineTo(200,200); lineTo(100,200); lineTo(100,100); } }; *********************************************************** 然后用curvto绘制曲线,这个我不好讲,因为curvto绘图的依据原理我还不知道, 在闪吧as区发贴,还没有回答. _root.createEmptyMovieClip("circle", 1); with (circle) { lineStyle(0, 0x000000, 100); moveTo(100, 150); curveTo(150, 150, 150, 100); curveTo(150, 50, 100, 50); curveTo(50, 50, 50, 100); curveTo(50, 150, 100, 150); }
****************************************************************
//因该特别说明的一点就是,curto里面的点再画闭合曲线的时候应该末尾的点与moveto所指定的点重合. //这个源文件我是直接重自己完整的文件里面粘贴一部分出来,所以有几个按钮的as是没有的.
下面想一下下用输入控制正多边形边数的问题
正多边形,我们可以用两种方法来达到,一个是定边长,一个是定外切圆半径 为了偷懒,我先画出了定边把它设置位电影夹子,然后用它来分别作为 定边长多边形的边和定外切圆半径的半径.

上一页 [1] [2] [3] [4] 下一页 |