Bonjour,
J'essaie de faire une rotation d'un cercle par rapport à son centre à l'aide de la classe AffineTransform:
Cercle de départ:
Ellipse2D.Double circle = new Ellipse2D.Double(10, 10, 350, 350);
Rotation:
1 2 3 4 5
| // rotation par rapport au centre
AffineTransform xform = new AffineTransform();
xform.setToRotation(0.3, circle.getCenterX(), circle.getCenterY());
//Récupération de la nouvelle shape
Path2D.Double nshape = (Path2D.Double)xform.createTransformedShape(circle); |
Le problème est que width et heigth de circle.getBounds2D() et nshape.getBounds2D() sont différents (ie xxx.getBounds2D().getWidth() et xxx.getBounds2D().getHeight()).
Sauriez-vous pourquoi ? je n'ai effectué que la rotation du cercle par rapport au centre ...
Merci d'avance.
Partager