Ok, j'ai essayé de faire pivoter un rectangle qui se trouve au-dessus d'une image. J'ai une classe Scrollable qui affiche l'image. Je peux dessiner des rectangles au-dessus de l'image. Mon problème est d'essayer de faire pivoter les Rectangles lorsque l'image est tournée. Le rectangle est perdu et placé au mauvais endroit.Comment trouver un point d'ancrage/rotation en Java?
J'ai déjà essayé de poursuivre Graphics2D, AffineTransform, createTransformedShape() mais pas de chance.
Ce que j'essaie de faire maintenant est de faire tourner le Rectangle manuellement. J'essaie d'obtenir le rectangle Point (x, y) en utilisant la formule ci-dessous:
double rectX = (Math.cos(Math.toRadians(90)) * (x - anchorX) - Math.sin(Math.toRadians(90)) * (y - anchorY)) + anchorY;
double rectY = (Math.sin(Math.toRadians(90)) * (x - anchorX) - Math.cos(Math.toRadians(90)) * (y - anchorY)) + anchorY;
Comment puis-je trouver les valeurs anchorX et anchorY en Java? J'ai essayé de plonger la hauteur de l'image de 2, mais cela ne fonctionne pas pour tous les angles de rotation. Dois-je obtenir la largeur et la hauteur JPanel ou quelque chose? Existe-t-il une formule que Java utilise pour trouver des points d'ancrage?