0

我正在用Java制作游戏。我制作了一个从外太空看到的行星,我想让它看起来像是行星在缓慢旋转。但我不知道如何旋转图像。我需要一个简单的命令,将我的图像围绕自己的中心旋转 1 度。有什么帮助吗?


这就是我想要做的: 图片

4

2 回答 2

1

看看这些教程:

于 2012-06-22T09:33:50.893 回答
0

您所描述的不是旋转图像,而是更改图像以表示图像中对象的 3D 旋转。

理想情况下,您不会将其用作图像,而是将其用作具有不同摄像机角度的 3D 对象。然后,您只需围绕对象旋转相机并将生成的图像显示给用户。

但是,如果您打算将其作为图像执行,那么您需要创建一个不同的图像来表示您的行星的各种旋转状态,并有一个单独的线程以重复的时间间隔将显示的图像依次替换为下一个图像. 在网上搜索“java 图像动画”——有很多关于如何做到这一点的教程。

如果要在 2d 空间中旋转图像,可以使用以下方法:

Image image = ...
Graphics2D g2d = ...; // 
g2d.translate(170, 0); // If needed
g2d.rotate(1);  // Rotate the image by 1 radian
//or g2d.rotate(180.0/3.14); to rotate by 1 degree
g2d.drawImage(image, 0, 0, 200, 200, observer);
于 2012-06-22T09:32:50.640 回答