大體上看渔期,有兩種表示一個曲面的方式:參數方程、隱式方程全谤。
對于一個3D物體:
參數方程是一個從2維參數到表示3D物體平面上點的空間坐標的3維參數的一個映射的猛。
隱式方程是一個等號左邊為表示3D物體平面上點的空間坐標的3維參數構成的標量表達式,等號右邊為0的方程氛雪。
以平面上的單位圓為例房匆,它的參數方程何隱式方程如下:
在實際中,一般根據實際需求采用不同的表示方法报亩,這些需求一般分為如下3點:
Evaluation:在對曲面進行采樣的時候需要對其附加上一下除了空間信息之外的信息浴鸿。例如在進行渲染的時候,除了幾何體的空間坐標外弦追,還需要其法向量信息岳链。
Query:一個典型的空間查詢是判斷空間中的某個點是否在幾何體的內部,另外還比如空間中某個點到某個曲面的距離劲件。
Modification:一個曲面可以在幾何上被修改(將一個平面卷起來)掸哑,還可以在拓撲關系上被修改(把幾張紙合并成一張更大的紙或者挖掉一張紙的一部分)。
曲面的定義和屬性
書中對于曲面的定義如下:
an orientable continuous 2D manifold embedded in
R3
個人的理解是:處于3維空間中的零远,方向連續(xù)的苗分,不存在通過無限細小特征連接的的部分。
以下面兩種情況為例牵辣,無限細小特征指的兩個正方體表面相連接的部分摔癣。
這樣兩個正方體組成的組合體的外表面就不能稱為一個面。
這樣的組合體可以稱之為:degenerate 3D solid
而把上面的兩個組合體連接的部分變成下面這個樣子之后,就不存在所謂的“通過無限細小特征相連接”的情況了择浊。
這樣組合體可以稱之為:non-degenerate 3D solid
點邊面的關系
在一個閉合連接網格內點(Vertex)戴卜,邊(Edge)和面(Face)的數量存在下面的關系:
Vertex - Edge + Face = 2(1 - g)
上面的式子中g表示的是曲面的虧格(genus),它的標準解釋為:
若曲面中最多可畫出n條閉合曲線同時不將曲面分開琢岩,則稱該曲面虧格為n
而對于一般的閉合曲面來說虧格n就是幾何體上洞眼的數目
對于一個三角形網格投剥,基于上面的式子還能得到下面的關系:
- 三角形的數量大約是頂點數量的2倍 -> Face ≈ 2 * Vertex
- 邊的數量大約是頂點數量的3倍 -> Edge ≈ 3 * Vertex
- 頂點鄰邊的數量平均是6