有一个画布(js),你需要在上面绘制一个具有随机数量顶点的等边多边形。如何确定点的坐标,知道起点的坐标以及从起点到点的距离?
工作代码:
function drawPoligon(x0, y0, n) {
console.log('x0=' + x0 + ', y0=' + y0 + ', n=' + n + ', r=' + r);
var coordArray = [[]];
for (var i = 0; i < n; i++) {
var xi = x0 + r * Math.cos(2*Math.PI*i/n);
var yi = y0 + r * Math.sin(2*Math.PI*i/n);
console.log('i=' + i + ', xi=' + xi + ', yi=' + yi);
coordArray[i] = [xi, yi];
}
console.log(coordArray);
return coordArray;
}
结果:

您需要其中一个点的另一个角。为简单起见,我们假设它为零。中心点的坐标 - x 0 , y 0,外接圆的半径 - R,边数 - N ... i从 0 变化到N -1。
所以我们得到一个正多边形。没错,您有一个不同的词-等边...但是正方形和菱形都适合4个点?还是它仍然正确?
点的坐标由上一个答案的公式确定,类似于具有半径
R和中心的圆的参数方程center。这N是多边形的边数。执行:
会有问题问