將sfmesh網格頂點沿Z方向平滑貼合到三維多邊形。
文法
sfmesh ST_SnapToPolygon(sfmesh sfmesh, geometry geom, f8 zlowd, f8 zupd, f8 buffer, i4 times);傳回值
平滑貼合處理後的sfmesh。
參數
參數名稱 | 描述 |
sfmesh | 3D 模型對象。 |
geom | 三維多邊形。 |
zlowd | Z方向下方最大距離。 |
zupd | Z方向上方最大距離。 |
buffer | 平滑貼合處理的緩衝區。 |
times | 平滑處理的次數,次數越多效果越好,建議取值範圍在[5, 20]之間。 |
描述
對於給定的地形網格M、三維多邊形P進行Z軸方向的貼合處理。
設定 zlowd、zupd參數來選擇參與處理的頂點。
設定buffer參數來設定平滑過渡的範圍大小。
設定times參數來設定平滑貼合的迭代次數,次數越多,效果越好。
樣本
SELECT BOX3D(ST_SnapToPolygon(
ST_3DIntersection(ST_3DMakeSphere(1.0, 4), 'BOX3D(-1 -1 0, 1 1 1)'::box3d),
'POLYGON((-5 -0.1 0.5, 5 -0.1 0.5, 5 0.1 0.5, -5 0.1 0.5, -5 -0.1 0.5))', 0.5, 0.5, 0.5, 10));
--------------------------------------
BOX3D(-1 -1 0,1 1 0.782785594463348)