Name

ST_MinimumClearance — Gibt das Mindestabstandsmaß für eine Geometrie zurück; ein Maß für die Robustheit einer Geometrie.

Synopsis

float ST_MinimumClearance(geometry g);

Beschreibung

Es ist nicht ungewöhnlich dass eine Geometrie, welche die Kriterien für Validität gemäß ST_IsValid (Polygone) oder ST_IsSimple (Linien) erfüllt, durch eine geringe Verschiebung von einem Knoten invalid wird. Dies kann während einer Konvertierung in Textformate (wie WKT, KML, GML und GeoJSON) vorkommen, oder bei binären Formaten, welche die Koordinaten nicht als Gleitpunkt-Zahl mit doppelter Genauigkeit (double-precision floating point) abspeichern (MapInfo TAB).

Der Mindestabstand ist ein quantitatives Maß für die Robustheit einer Geometrie gegenüber Änderungen der Koordinatengenauigkeit. Es ist der größte Abstand, um den die Eckpunkte der Geometrie verschoben werden können, ohne dass eine ungültige Geometrie entsteht. Größere Werte des Mindestabstands bedeuten eine größere Robustheit.

Wenn eine Geometrie ein Mindestabstandsmaß von e hat, dann gilt:

  • Zwei sich unterscheidende Knoten der Geometrie sind nicht weniger als e voneinander entfernt.

  • Kein Knoten liegt näher als e bei einem Liniensegment, außer es ist ein Endpunkt.

Wenn für eine Geometrie kein Mindestabstandsmaß existiert (zum Beispiel ein einzelner Punkt, oder ein Mehrfachpunkt, dessen Punkte identisch sind), dann gibt ST_MinimumClearance unendlich zurück.

Um durch Präzisionsverluste verursachte Gültigkeitsprobleme zu vermeiden, kann ST_ReducePrecision die Koordinatengenauigkeit verringern und gleichzeitig sicherstellen, dass die polygonale Geometrie gültig bleibt.

Verfügbarkeit: 2.3.0

Beispiele

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