名稱

ST_MinimumClearance — 傳回幾何圖形的最小間隙,這是衡量幾何圖形穩健性的指標。

概要

float ST_MinimumClearance(geometry g);

描述

根據 ST_IsValid(多邊形)或 ST_IsSimple(線條)的標準,幾何圖形可能符合有效性的標準,但是如果它的其中一個頂點移動一小段距離,則會變成無效。這可能會在轉換為文字格式(例如 WKT、KML、GML、GeoJSON)或不使用雙精度浮點座標的二進制格式(例如 MapInfo TAB)期間,因精度損失而發生。

最小間隙是對幾何圖形座標精度變更的穩健性的定量衡量。它是幾何圖形的頂點可以移動的最大距離,而不會產生無效的幾何圖形。最小間隙的值越大,表示穩健性越高。

如果幾何圖形的最小間隙為 e,則

  • 幾何圖形中沒有兩個不同的頂點之間的距離小於 e

  • 沒有任何頂點與其非端點的線段的距離小於 e

如果幾何圖形不存在最小間隙(例如,單個點,或點相同的 MultiPoint),則傳回值為 Infinity

為了避免因精度損失導致的有效性問題,ST_ReducePrecision 可以在確保多邊形幾何圖形保持有效的情況下降低座標精度。

可用性:2.3.0

範例

SELECT ST_MinimumClearance('POLYGON ((0 0, 1 0, 1 1, 0.5 3.2e-4, 0 0))');
 st_minimumclearance
---------------------
             0.00032