我正在尝试旋转BufferedImage并在之后移动它。如果我在轮换之前或之后进行trans.traslate(wantedPointX,wantedPointY)我没有得到想要的结果,那么我该怎么办呢?
这是我到目前为止所尝试的内容:
protected void paintComponent(Graphics g) {
super.paintComponent(g);
AffineTransform trans = new AffineTransform();
try {
BufferedImage img = ImageIO.read(new File("line.png"));
trans.translate(img.getWidth() / 2, img.getHeight() / 2);
trans.rotate(Math.atan2(y, x)); //follows mouse
trans.translate(-(img.getWidth() / 2), -(img.getHeight() / 2));
//trans.moveTo(200, 200)
((Graphics2D)g).drawImage(img, trans, null);
} catch (IOException ex) {
System.err.println("error reading image");
}
}