So drehen Sie ein Bild um einen Punkt in Java
Eduardo Maia:
Ich habe mir einige ähnliche Fragen angesehen, aber keine beantwortet genau das, was ich brauche. In den Lösungen, die ich gefunden habe, haben alle das Bild gedreht, ohne sich zu bewegen, aber ich brauche, dass sich dieses Bild um die Ausgangsposition dreht und nicht, dass es sich in Position dreht.
Code, den ich verwendet habe (was ich gefunden habe):
AffineTransform transform = new AffineTransform();
transform.rotate(Math.toRadians(angle), img.getWidth() / 2, img.getHeight() / 2);
AffineTransformOp op = new AffineTransformOp(transform, AffineTransformOp.TYPE_BILINEAR);
img = op.filter(img, null);
g.drawImage(img, getX(), getY(), null);
Ich brauche das Bild, um sich in Bezug auf das erste Pixel des Bildes zu drehen.
Kumpel :
Die rotate
Methode, die Sie aufrufen, wird im Ankerpunkt als Bildmitte übergeben: https://docs.oracle.com/javase/7/docs/api/java/awt/geom/AffineTransform.html#rotate(double, % 20double,% 20double)
Versuchen Sie einfach, den Drehwinkel selbst einzugeben, und er sollte sich oben links drehen:
transform.rotate(Math.toRadians(angle));