I am currently trying to rotate an image and then drawing an image on top which isn't rotating. But whenever I use:
g2d.rotate(Math.toRadians(rot), (x+15), (y+15));
every image I draw afterwards rotates as well. Is there any way I can rotate one image and not rotate the rest (gosh its really hard to explain).
Here's my paint method:
public void draw(Graphics2D g2d)
{
move();
if(bo.px==+1)rot--;
if(bo.px==-1)rot++;
g2d.rotate(Math.toRadians(rot), (x+15), (y+15));
g2d.drawImage(img, x, y, null);//this should rotate
g2d.drawImage(shine, x, y, null);//this shouldn't
}
Thanks in advance.
You can save the original transform, rotate and draw the first image and then apply back the original transform before drawing the second image.
Try
After you draw the rotated image you need to perform the inverse rotation to bring things back to the original non-rotated state.