2013-04-05 67 views
2

八叉樹是行進立方體的特例嗎?我的意思是八角形使用相同的三角立方體的行軍立方體。我知道八叉樹是四叉樹的三維形式。我只想知道我的方向是否正確。 樹形成後,八叉樹如何形成三角形(用於創建表面)與步進立方體相同?marching cube和octree有什麼區別?

回答

3

這是一個完全不同的理論。八叉樹是三維空間的立方細分方法,用於在空間中查找物體的分佈,以便高效地處理大空間並將其縮小到需要找到東西的區域。

行進立方體是一種用於生成網格的系統,並且不使用任何漸進細分(如八叉樹)。

但是一個很好的遊行立方體系統會使用八叉樹來找到需要處理的區域並丟棄沒有網格的東西。 https://www.youtube.com/watch?v=gNZtx3ijjpo

+0

yess我認爲你是正確的uformorace ..事情是我有一個正在運行的Marching立方體算法用C++編寫。到目前爲止,我已經發現我需要做的不是填充每個3D網格(就像在進行立方體一樣),我們創建網格的樹形結構,並將三角形形成那些子表面切割(子網格)和最大的iso值) – solti 2013-04-17 17:52:03

4

行進立方體是一種通過細分爲相同大小的小立方體並以保持連續性的方式對每個立方體進行三角化來對函數的等值面進行三角化的方法。

八叉樹基本iso-surface方法改爲切成不一致大小的立方體。與等效「視覺質量」的行進立方體算法相比,這可以生成更少數量的三角形。然而,額外的成本是,許多特殊情況需要在每個立方體中對三角表面進行三角測量以避免漏洞。此外,您必須確定每個立方體何時「足夠小」的指標(與立方體中的值變化以及立方體的視覺重要性等相比)。通常爲了減少特殊情況的數量,相鄰立方體最多隻能有一個八叉樹級別 - 這意味着僅僅基於度量標準的簡單細化是不可能的。

所以總結:行軍立方體是一種快速的等表面三角測量方法。八叉樹方法更復雜,但可以提供更好的結果。它們不一樣,八叉樹不是行進立方體的特例。

+0

我真的很感激,喜歡,你解釋得有多好:)我打算開始做八叉樹項目,我一直在讀八叉樹的紙張,它很迷惑,但仍然重新閱讀...但仍然是什麼你會建議我從邁克爾開始嗎? – solti 2013-04-05 06:57:56

+0

我想我應該先開始做簡單的八叉樹。 – solti 2013-04-05 07:05:15