2012-01-24 27 views
0

我正在使用Graphics2D(java)如何在Java Graphics2D中移動Area類對象

我試圖用鼠標拖動移動一個隨機形狀。

該隨機形狀存儲在java.awt.geom.Area類的Area對象中。

我知道如何選擇該區域對象,我只需要弄清楚如何將其實際移動到新的座標。

橢圓和矩形等形狀可以很容易地移動,但是如何移動像多邊形或包含曲線並且沒有特定預定義結構的形狀。

回答

0

爲了使用Graphics類繪製矩形,需要原點和寬度和高度。

爲了使用Graphics類繪製橢圓,需要原點和寬度和高度。

這些簡單圖形中的每一個都由一個原點和圖形的尺寸組成。

同樣,對於任何複雜的形狀,您都需要一個原點。這是用鼠標拖動移動形狀時「移動」的原點。換句話說,鼠標移動的原點與圖形的原點相對應。當鼠標移動到新的X和Y座標時,您的原點將移動到新的x和y座標。

假設的長方形的10原點,10比方說,鼠標拖拽的起源是30,30當鼠標移動到新的X和Y座標,更改矩形的原點。在這個例子中,當鼠標移動到40,40,矩形的原點變爲20,20

的矩形和橢圓已經在Graphics類的拉伸方法。你可能得寫的複雜形狀自己繪製方法。