一、用Transform 面板
我们以正五边形为例
1、新建一文件,在场景任画一条直线,按 F8转换为影片,把中心定为左上角 ,如图1所示
图1:中心定在左上角
2、选中直线,按ctrl+T调出Transform 面板,并在Rotate框中输入72(360/5),角度的计算方法是360度除以边数。如图2
图2:Transform面板
3、按面板中的copy and apply transform按钮4次,就可复制出环形排列的四条直线
4、按CTRL+A选中所有的直线, 按ctrl+B打散,依次把直线的端点连接,去掉多余的线条就完工了。如图3。
图3:正五边形
二、用as
界面如下图所示,很简洁,有两个可输入文本框和一个按钮
你只要在文本框中输入边数和大小,按确定按钮,就可在画出你想的正多边形,下面我们就来一步步来制作吧。
1、启动flash,按CTRL+N新建一个文件,场景的大小和背景设置合理就可,按CTRL+S保存,文件名为正多边形。
2、按T键选取文本工具,并打开属性面板,如下图选择可输入文本,
在场景的左上角拖曳一文本框,作为多边形的边数,还是在属性面板中的Var栏中输入bb,为文本框取一变量名,以方便后面程序的调用。用同法制作另一文本框,取名aa,作为多边形的大小。
3、在场景中画一小方块,并选中,按F8转换为按钮,
4、最后为按钮添加as,如下所示:
思路:把一个圆划分成n等分,把这些点连接起来,如右图示怎样画五边形
on (release) //鼠标释放时执行下列语句
{
daxiao=aa;
//从输入的文本框中获取多边形的大小,以像素为单位
bianshu = bb;
// 获取边数,整数,从3开始,到无穷大,n多边形就是圆
jiaodu = 360/bianshu;
//得到每个等分的角度
for (n=1; n<=bianshu; n++)
//for循环,由bianshu来控制循环的次数,也就是要画的多边形的边数
{
a = daxiao*math.cos(n*jiaodu*math.pi/180);
b = daxiao*math.sin(n*jiaodu*math.pi/180);
//用三角函数算出起点的坐标
c = daxiao*math.cos((n+1)*jiaodu*math.pi/180);
d = daxiao*math.sin((n+1)*jiaodu*math.pi/180);
//同理算出终点的坐标
createEmptyMovieClip("xian", n);
// 创建一个空影片xian,n为层次
with (xian) {
lineStyle(2, 0xff0000, 100);
// 定义线的大小、颜色、透明度
moveTo(a+300, b+200); //定义画线的起点的坐标,(300,200)是多边形的中心
lineTo(c+300, d+200);//定义画线的终点的坐标
}
}
}