使用“仿射变换”我可以imageA
轻松旋转。同样,imageA
将与imageB
. 但是,在我旋转它之后,我似乎无法找到一种方法来imageA
回到原来的位置。
(我在一些网站上做了一些研究,显然最好的方法是将图像移回其原始位置,使其看起来像从锚点旋转。)
到目前为止,这是我的代码:
public void paintComponent(Graphics g) {
super.paintComponent(g);
AffineTransform af = new AffineTransform();
Graphics2D g2d = (Graphics2D) g;
af.translate(imageBx, imageBy); // moves ImageA to imageb's position
af.rotate(Math.toRadians(angle), imageB.getHeight(this) / 2, imageB.getWidth(this) / 2);
g2d.drawImage(imageA, af, null);
g2d.drawImage(imageB, imageBx, imageBy, null);
}
如果有人可以帮助我imageA
回到原来的位置(就在 上imageB
),那将非常有帮助!