Name

ST_IsClosed — Gibt den Wert TRUE zurück, wenn die Anfangs- und Endpunkte des LINESTRING's zusammenfallen. Bei polyedrischen Oberflächen, wenn sie geschlossen (volumetrisch) sind.

Übersicht

boolean ST_IsClosed(geometry g);

Beschreibung

Gibt den Wert TRUE zurück, wenn die Anfangs- und Endpunkte des LINESTRING's zusammenfallen. Bei polyedrischen Oberflächen wird angezeigt, ob die Oberfläche eine Fläche (offen) oder ein Volumen (geschlossen) beschreibt.

Diese Methode implementiert die OGC Simple Features Implementation Specification for SQL 1.1.

Diese Methode setzt die SQL/MM-Spezifikation um. SQL-MM 3: 7.1.5, 9.3.3

[Anmerkung]

SQL-MM definiert das Ergebnis von ST_IsClosed(NULL) als 0, während PostGIS NULL zurückgibt.

Diese Funktion unterstützt 3d und lässt den Z-Index nicht fallen.

Diese Methode unterstützt kreisförmige Strings und Kurven.

Erweiterung: Mit 2.0.0 wurde die Unterstützung für polyedrische Oberflächen eingeführt.

Diese Funktion unterstützt polyedrische Flächen.

Beispiele für Linienzüge und Punkte

Code
SELECT ST_IsClosed('LINESTRING(0 0,1 1)'::geometry);
Ausgabe von Rastern
f
Figure
Geometry figure for visual-st-isclosed-01
Code
SELECT ST_IsClosed('LINESTRING(0 0,0 1,1 1,0 0)'::geometry);
Ausgabe von Rastern
t
Figure
Geometry figure for visual-st-isclosed-02
Code
SELECT ST_IsClosed('MULTILINESTRING((0 0,0 1,1 1,0 0),(0 0,1 1))'::geometry);
Ausgabe von Rastern
f
Figure
Geometry figure for visual-st-isclosed-03
Code
SELECT ST_IsClosed('POINT(0 0)'::geometry);
Ausgabe von Rastern
t
Code
SELECT ST_IsClosed('MULTIPOINT((0 0),(1 1))'::geometry);
Ausgabe von Rastern
t

Beispiel für eine polyedrische Oberfläche

This example uses a cube.

Code
SELECT ST_IsClosed('POLYHEDRALSURFACE( ((0 0 0,0 0 1,0 1 1,0 1 0,0 0 0)),
((0 0 0,0 1 0,1 1 0,1 0 0,0 0 0)),((0 0 0,1 0 0,1 0 1,0 0 1,0 0 0)),
((1 1 0,1 1 1,1 0 1,1 0 0,1 1 0)),
((0 1 0,0 1 1,1 1 1,1 1 0,0 1 0)),((0 0 1,1 0 1,1 1 1,0 1 1,0 0 1)) )');
Ausgabe von Rastern
t
Figure
Geometry figure for visual-st-isclosed-06

This example uses the same cube with one side missing.

Code
SELECT ST_IsClosed('POLYHEDRALSURFACE( ((0 0 0,0 0 1,0 1 1,0 1 0,0 0 0)),
       ((0 0 0,0 1 0,1 1 0,1 0 0,0 0 0)),((0 0 0,1 0 0,1 0 1,0 0 1,0 0 0)),
       ((1 1 0,1 1 1,1 0 1,1 0 0,1 1 0)),
       ((0 1 0,0 1 1,1 1 1,1 1 0,0 1 0)) )');
Ausgabe von Rastern
f
Figure
Geometry figure for visual-st-isclosed-07

Siehe auch

ST_IsRing