// r 为半径,x,y坐标为圆心坐标
MovieClip.prototype.drawCircle = function(r, x, y) {
this.moveTo(x+r, y);
a = Math.tan(22.5 * Math.PI/180);
for (var angle = 45; angle<=360; angle += 45) {
// endpoint:
var endx = r*Math.cos(angle*Math.PI/180);
var endy = r*Math.sin(angle*Math.PI/180);
// control:
// (angle-90 is used to give the correct sign)
var cx =endx + r*a*Math.cos((angle-90)*Math.PI/180);
var cy =endy + r*a*Math.sin((angle-90)*Math.PI/180);
this.curveTo(cx+x, cy+y, endx+x, endy+y);
}
}
// 开始画圆
var circle_mc = this.createEmptyMovieClip("circle", 1);
circle_mc.lineStyle(1, 0xaaaaaa, 100);
circle_mc.beginFill(0xcccccc, 100);
circle_mc.drawCircle(80, 100, 100);
circle_mc.endFill();
博客给出了使用函数绘制圆形的代码。定义了 MovieClip.prototype.drawCircle 函数,通过数学计算确定圆上各点坐标,利用 curveTo 方法绘制。还展示了创建空影片剪辑、设置线条样式和填充颜色,最后调用 drawCircle 函数完成圆形绘制。

被折叠的 条评论
为什么被折叠?



