-4

我们如何绘制多边形。当只给出边和半径时。我必须制作一个弹出框,它将半径和边数作为输入,并绘制一个多边形。只需要公式。

4

1 回答 1

4

想象一个半径为 r 的圆。它就像一个正多边形,有无数条边。

三角函数告诉我们:

x = r * cos(a);
y = r * sin(a);

我们知道一个圆圈中有 360 度或 2pi 弧度。因此,要绘制它,我们将从角度 = 0 开始,计算该坐标,进入下一个角度并计算该点,然后在两者之间画一条线。

我们只能围绕圆的边缘计算这么多点,最终不会有任何区别。如果圆足够小,即使是 8 条边也会看起来是圆的。

要绘制一个 8 边圆,我们需要在圆周围均匀分布 8 个点。将圆分成 8 个角,每个角为 2 * pi / 8 弧度。

所以:

angle = 0.0;
step = 2 * pi / 8;

for ( n = 0; n < 8; n++ ) {
    x = radius * cos(angle);
    y = radius * sin(angle);
    angle += step;
}

现在你可以画一个八边形,改变它来画一般情况。

于 2012-07-05T08:57:30.743 回答