代码有效,不是寻找代码帮助,但我正在寻找任意多边形的一些帮助。它可以是任何形状,我一直在玩,但似乎无法获得星形。我问是否有人有一个带有x,y坐标的很酷的形状,这样我就可以为我的家庭作业获得一个漂亮的形状。如果你想看看它运行的代码,我可以,但这是一个学术作业。因此,程序绘制一个形状中带有对位点的形状,并将由 n 值给出的线发送到形状的边界,而不会越过边界。非常感谢任何帮助!!
public void drawRangeMap(Graphics g)
{
//Draw map of room
//int x[] = polygonX;
//int y[] = polygonY;
int [] px = {150,169,256,196,300,196,256,169,150,131,44,104,0,104,44,150,150};
int [] py = {0,103,44,131,150,169,256,196,300,196,256,169,150,131,44,103,150};
p = new Polygon(px, py, 14);
g.drawPolygon(p);
使用一些图形或CAD程序绘制形状,然后检查角点的坐标。大多数图形软件至少允许您显示鼠标光标坐标。
您还可以通过计算两个同心圆上的点来数学生成星形。从两个圆圈中的一个交替取点。使用 Math.sin 和 Math.cos 进行计算。