我想從體素中繪製一個平面,目標是繪製它填充,我有很多麻煩。我嘗試的每件事都會導致表面上的孔洞。表面有4個角,但我希望能夠對三角形使用相同的方法。3D體素角平面
這是我已經試過:
- 從一個平行的側沿平面的一側沿划向其他
- 畫出只在一個方向(Z方向)
我用2獲得了最大的成功,但當我在飛機上添加任何俯仰或滾轉時(任何提升),都失敗了。
任何提示?沒有代碼,因爲我確定我的實現都是正確的,只是算法的選擇是錯誤的。
編輯:
在一個側面說明,儘管2號過少孔,在飛機被扭曲,並沒有出現持平。
EDIT2:
我和我的第一個決定堅持,但現在的問題是,我怎樣檢測的時候會有一個洞?通過觀察,我發現每個平面上都有相同數量的孔,無論俯仰和滾轉如何。偏航是這裏的罪魁禍首。
EDIT3:
我要離開這個問題了,但我決定只測試一個附近的塊,看它是否是空的。我不想這樣做,但是。如果你有一個更優雅的解決方案,我非常喜歡。
謝謝!我做了一個非常低效的算法,它基於文章中的算法。我需要做重大的優化,但是,它會起作用。它迭代圍繞三角形的立方體,它在該頁面中使用相同的方法進行測試,但對於投影到平面(X,Y或Z)上的三個二維三角形進行測試。這決定了該點是否在三角形「金字塔」區域。然後使用平面方程,並將點減去任何已知點並用三角形的法線點出。針對給定的不確定性參數測試點積值,例如, dot> = -u && dot <= u。 – SpaceFace