В настоящее время я пытаюсь нарисовать и заполнить полигон, в котором есть дыра в Java. Обычно это не было бы большой проблемой, так как я рисовал внешнее кольцо, а затем рисовал внутреннее кольцо цветом фона.
Но проблема в том, что полигон отображается над изображением, которое должно быть "увидено" через дырку.
Я пишу код на Java и использую JTS Topology Suite для своих геометрических данных.
Это мой текущий код, который просто рисует границу и заполняет многоугольник цветом.
private void drawPolygon(com.vividsolutions.jts.geom.Polygon gpoly, Color color, Graphics2D g2d){
java.awt.Polygon poly = (java.awt.Polygon)gpoly;
for(Coordinate co : gpoly.getExteriorRing().getCoordinates() {
poly.addPoint(co.x, co.y);
}
g2d.setColor(col);
g2d.fill(poly);
g2d.setColor(Color.BLACK);
g2d.draw(poly);
}
К сожалению, java.awt.Polygon не поддерживает Многоугольники с отверстиями.