2012-06-22 74 views
0

我正在用Java製作遊戲。我做了一個從外太空看到的行星,我想讓它看起來像行星慢慢旋轉。但我不知道如何旋轉圖像。我需要一個簡單的命令,將我的圖像圍繞自己的中心旋轉1度。任何幫助?簡單圖像旋轉


這就是我想做的事: Image

+0

*「簡單的圖像旋轉」*通過'簡單'DYM勺餵給你的答案? [你有什麼嘗試?](http://www.whathaveyoutried.com/) –

+1

什麼是你的前端? HTML/HTML5 /安卓/ 2dgraphics? – Kshitij

+0

使用'AffineTransform'(假設Java 2D)。這是[animated rotation]的示例(http://stackoverflow.com/a/11117371/418556)。它使用形狀和區域,但原理是一樣的。 –

回答

0

你所描述不旋轉的圖像,但改變的圖像來表示圖像中的物體的3D旋轉。

理想情況下,您不會將此圖片用作圖片,而是將其作爲具有不同相機角度的3D對象。然後,您只需旋轉相機周圍的相機並將結果圖像顯示給用戶。

但是,如果您將其作爲圖像進行設置,那麼您需要創建一個不同的圖像來表示您的星球的各種旋轉狀態,並且有一個單獨的線程將按順序將下一個圖像替換爲顯示的圖像,重複間隔。在網上搜索「java圖像動畫」 - 有很多關於如何做到這一點的教程。

如果要旋轉二維空間中的圖像,你可以使用這樣的事情:

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); 
+0

我想你誤解了我。對不起,不夠清楚。這就是我想要做的:http://imageshack.us/photo/my-images/266/examplea.png/ –

+0

你的星球是一個與背景星場分開的圖像嗎?如果不是,那麼你仍然必須按照我在第二部分描述的內容去做。如果您的星域是獨立的,那麼您可以使用java-2d輕鬆地旋轉圖像。 –

+0

這是一個單獨的圖像。請看看java 2d –