2012-03-02 63 views

回答

0

在代碼中首次使用translate時,實際上是在翻譯整個座標系。如果你想在一個位置/變換中獨立繪製一個對象(不影響下面的變換),你應該在pushMatrix()/popMatrix()調用中隔離它。

這裏是一個V基本的例子:

pushMatrix(); 
translate(50,50); 
rect(0,0,50,50); 
popMatrix(); 

translate(20,20); 
rect(0,0,20,20); 

大廣場(50×50)在50,50位置先畫,但翻譯pushMatrix()/popMatrix()調用之間隔離,所以當我們調用translate(20,20)翻譯會從0,0開始執行,而不是從50,50開始執行,這意味着我們會得到一個20,20,而不是70,70的小方框。

+0

謝謝,我只需按下/彈出矩陣堆棧以跟蹤座標系。 – dangerChihuahua007 2012-03-03 02:44:28

相關問題