我正在尝试将红色六边形重新定位到下图中黑色箭头指向的矩形的中心。我找不到放置 x 和 y 坐标的位置。public void poligon(Graphics g) { Graphics2D g2d = (Graphics2D) g; Polygon pol; int x[] = {375, 400, 450, 475, 450, 400}; int y[] = {150, 100, 100, 150, 200, 200}; pol = new Polygon(x, y, x.length); g2d.setPaint(Color.red); g2d.fill(pol);}
2 回答
largeQ
TA贡献2039条经验 获得超7个赞
我认为您总是输入示例 x 和 y 坐标来制作多边形。在您的示例中,多边形点上的 x 位置为:375、400、450、475、450、400,相同点的 y 位置为 150、100、100、150、200、200。
我会尝试找到点之间的差异并保存它。在您的示例中,您可以获得 375 作为 x 的基础。所以数组内的点将是:
int baseX = 375;
int x[] = {baseX, baseX + 25, baseX + 75, baseX + 100, baseX + 75, baseX + 25};
请为 y 做同样的事情。之后用 baseX 和 baseY 进行实验。这样你就不会破坏你的多边形,你可以安全地移动它。
玩得开心编码!
添加回答
举报
0/150
提交
取消