Создайте Path2D
.
Path2D.Double path = Path2D.Double();
path.moveTo(0, 4);
path.lineTo(3, 4);
path.lineTo(5, 3);
path.lineTo(12, 3);
path.lineTo(11, 2);
path.lineTo(9, 1);
path.lineTo(3, 1);
path.lineTo(0, 2);
path.lineTo(0, 3);
path.lineTo(0, 4);
g2D.draw(path);
Или используйте drawPolyline(int[] xPoints, int[] yPoints, int nPoints)
.
g2D.drawPolyline(new int[] { 0, 3, 5, 12, 11, 9, 3, 0, 0, 0 },
new int[] { 4, 4, 3, 3, 2, 1, 1, 2, 3, 4 },
10);
Или используйте drawPolygon(int[] xPoints, int[] yPoints, int nPoints)
, где вам не нужно повторять первую точку в конце.
g2D.drawPolygon(new int[] { 0, 3, 5, 12, 11, 9, 3, 0, 0 },
new int[] { 4, 4, 3, 3, 2, 1, 1, 2, 3 },
9);
Или создайте Polygon
и используйте его снова, не повторяя первая точка:
Polygon polygon = Polygon(new int[] { 0, 3, 5, 12, 11, 9, 3, 0, 0 },
new int[] { 4, 4, 3, 3, 2, 1, 1, 2, 3 },
9);
g2D.drawPolygon(polygon);