Ich habe ein Bild, das ich vor dem Zeichnen rotiere. Das Bild wird um die Winkel eines Sechsecks gedreht. Mit anderen Worten, das Bild "hebt" im Grunde die einzelnen Kanten eines Sechsecks hervor. Ich muss erkennen, ob die Maus innerhalb dieses gedrehten Bildes geklickt wurde. Das Erkennen eines Mausklicks in einem nicht gedrehten Bild ist ziemlich einfach, aber ich habe keine Ahnung, wie man Klicks innerhalb gedrehter Punkte erkennt. Gibt es eine Möglichkeit, die Punkte der Bildecken nach der Drehung zu erhalten, damit ich ein unsichtbares Polygon über das Bild legen kann und Polygon.contains() verwende?Wie kann ich einen Klick auf ein gedrehtes Bild in Slick2D erkennen?
Image highlightEdge = new Image("assets/img/highlightEdge.png");
if(angle == 90){
highlightEdge.setCenterOfRotation(highlightEdge.getWidth(), 0);
highlightEdge.rotate(new Float(angle));
highlightEdge.draw(testPoint.x - 56, testPoint.y);
} else if(angle == 210) {
highlightEdge.setCenterOfRotation(0, 0);
highlightEdge.rotate(new Float(angle));
highlightEdge.draw(lastSettlement.x - 72, lastSettlement.y - 32);
} else if(angle == 330){
highlightEdge.setCenterOfRotation(0, 0);
highlightEdge.rotate(new Float(angle));
highlightEdge.draw(lastSettlement.x - 8, lastSettlement.y - 32);
} else if(angle == 30){
highlightEdge.setCenterOfRotation(0, 0);
highlightEdge.rotate(new Float(angle));
highlightEdge.draw(lastSettlement.x-8, lastSettlement.y);
} else if(angle == 150){
highlightEdge.setCenterOfRotation(0, 0);
highlightEdge.rotate(new Float(angle));
highlightEdge.draw(lastSettlement.x-72, lastSettlement.y);
} else {
highlightEdge.setCenterOfRotation(0, 0);
highlightEdge.rotate(new Float(angle));
highlightEdge.draw(lastSettlement.x-40, lastSettlement.y - 48);
}