【发布时间】:2019-11-21 04:51:16
【问题描述】:
我有一个用点画螺旋线的代码
var c = document.getElementById("myCanvas");
var cxt = c.getContext("2d");
var centerX = 400;
var centerY = 400;
cxt.moveTo(centerX, centerY);
var count = 0;
var increment = 3/32;
var distance = 10;
for (theta = 0; theta < 50; theta++) {
var newX = centerX + distance * Math.cos((theta) * 4 * Math.PI * increment );
var newY = centerY + distance * Math.sin(((theta)) * 4 * Math.PI * increment );
cxt.fillText("o", newX, newY);
count++;
if (count % 4 === 0) {
distance = distance + 10;
}
}
cxt.stroke();
<canvas id="myCanvas" width="800" height="800" style="border:1px solid #c3c3c3;"></canvas>
注意我改变增量值多少次,总有一条线比其他线有更多或更少的点
increment = 5/32;
这是否可以绘制一个所有线都具有相同长度的完美螺旋?
【问题讨论】:
标签: javascript loops canvas html5-canvas draw