網格細分有很多種方式,其中loop subdivision是一種三角網格細分方法(只能用在三角形面上)
loop細分的基本思想就是把一個三角形分成四個三角形,區分新頂點和老頂點分別進行位置的改變,最終讓模型表面變得更加光滑
對於Loop細分其實就是兩步:先細分,再調整
非邊界更新策略
對於非邊界情況:
細分時: 新頂點被兩個三角形共享,爲了進行細分引入了新點E,E根據ABCD的位置進行定位
調整時:對於點N進行位置更新,部分保留自己的位置,部分受周圍頂點的影響,最後使得整個模型更加光滑
邊界更新策略:
對於邊界情況:
細分時邊界中點的位置由邊界邊的兩個頂點定義
更新三個三角形的頂點位置時,點N部分保留自己的位置,部分受周圍頂點的影響,最後使得整個模型更加光滑
實現過程:
每次細分時,每條邊上計算並插入一個新頂點,插入完畢後對於每一個原始頂點更新位置。
邊界點,邊界邊,非邊界點,非邊界邊具有不同的插入計算方法和更新方法