我们如何绘制多边形。当只给出边和半径时。 我必须制作一个弹出框,它将输入半径和边数,并绘制一个ploygon。只需要公式。
答案 0 :(得分:4)
想象一下半径为r的圆。它就像一个具有无数边的正多边形。
三角函数告诉我们:
x = r * cos(a);
y = r * sin(a);
我们知道圆圈中有360度或2pi弧度。因此,为了绘制它,我们将从angle = 0开始,计算该co-ord,步进到下一个角度并计算该点,然后在两者之间画一条线。
我们可以围绕圆圈的边缘计算出很多点,最终它不会产生任何影响。如果圆圈足够小,即使是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;
}
现在你可以绘制一个八边形,改变它以绘制一般情况。