2011-12-13 51 views
0

我正在使用OpenGL,我需要在三維空間中的三角形前面繪製一個平面。所以如果其中一個三角形點發生變化,那麼這個平面也會發生變化OpenGL中的平行平面

我有3個點,並且使用叉積,我可以得到法向量,所以,繪製平面時,我只需要將三角形轉換爲參照三角形點之一的世界的起源,在法線上平移距離,旋轉X,Y和Z中的法線角度,繪製平面。

我需要知道如何在正常的翻譯,以及如何旋轉的新飛機,因此,頂點變化時一個正常的變化,飛機也隨之變化。

據我所知,我可以使用在glRotatef法線矢量(角,正常[X,Y,Z]),與角度= 0。但是當我改變一個三角形頂點時,該平面不會改變。

回答

2

OpenGL是不是一個場景圖。它不會爲你轉換對象。所有OpenGL都會呈現您告訴它呈現的內容。

如果你告訴它渲染頂點(你改變),不告訴它改變它繪製的平面的方式,那當然平面不會改變。

查找到場景圖,以及如何做矩陣和矢量數學。一個簡單的場景圖很容易創建。

+0

是的,我知道,這是計算三角形的法向量,翻譯過正常的原因,旋轉法線角度和繪製平原。 – Herman

+0

好的,也許我誤解了你在說什麼。但是,按照你說的方式,你似乎想要改變三角形頂點,然後自動改變繪製的內容(這對於場景圖來說是可能的)。如果您顯示您用來繪製飛機的代碼,也許我們可以幫助您更多。 – NickLH