首頁
云原生數據庫 PolarDB
云原生數據庫PolarDB PostgreSQL版(兼容Oracle)
時空引擎(GanosBase)
Scene SQL參考
空間分析
ST_ComputeFrustum
計算視點的視錐體。
語法
meshgeom ST_ComputeFrustum(cstring viewpoint);
參數
參數名稱 | 描述 |
viewpoint | 視點信息。 使用JSON格式:
|
視點信息的JSON中各參數含義:
參數 | 描述 | 取值范圍 |
x | 視點的x坐標,默認為0。 | (-inf, +inf) |
y | 視點的y坐標,默認為0。 | (-inf, +inf) |
z | 視點的z坐標,默認為0。 | (-inf, +inf) |
h | 視點的附加高度,默認為0。 | [0, +inf) |
azimuth | 從正北方向(y軸正向)起,依順時針方向到觀察方向之間的夾角,默認為 0,單位為度。 | [-180, 180] |
pitch | 俯仰角(觀察方向與XOY平面的夾角),當觀察方向在XOY平面上方時,俯仰角為正,否則為負。默認為0,單位為度。 | [-90, 90] |
distance | 最大可視距離,值越大視錐體覆蓋范圍越廣,默認為100。 | (0, +inf) |
horizontalFov | 水平視角范圍,默認為90,單位為度。 | (0, 180) |
verticalFov | 垂直視角范圍,默認為60,單位為度。 | (0, 180) |
depthMapSize | 深度圖尺寸,深度圖尺寸越大,計算的視錐體越精細,默認為128。 | (0, 2048] |
描述
根據輸入的視點信息計算視點的視錐體。
示例如下圖:
視錐體(俯視圖)
視錐體(側視圖)
示例
SELECT ST_NumPatches(ST_ComputeFrustum('{"x" : 2938, "y" : 750, "z" : 90, "h" : 1.8, "azimuth" : 90, "pitch" : -35, "horizontalFov" : 90, "verticalFov" : 60, "distance" : 600, "depthMapSize" : 128}'));
--------
32766
說明
返回值表示該視錐體由32766個三維三角形構成。
文檔內容是否對您有幫助?