ST_IsSimple

Definition

ST_IsSimple gibt 1 (Oracle) oder t (PostgreSQL) zurück, wenn das ST_Geometry-Objekt einfach ist. Andernfalls wird 0 (Oracle) oder f (PostgreSQL) zurückgegeben.

Syntax

sde.st_issimple (g1 sde.st_geometry)

Rückgabetyp

Boolesch

Beispiel

Die Tabelle "issimple_test" wird mit zwei Spalten erstellt. Die Spalte "pid" ist vom Datentyp smallint und enthält die eindeutige Kennung der einzelnen Zeilen. In der ST_Geometry-Spalte "g1" werden die einfachen und nicht einfachen Geometriebeispiele gespeichert.

CREATE TABLE issimple_test (pid smallint, g1 sde.st_geometry);

Mit der INSERT-Anweisung werden zwei Datensätze in die Tabelle "issimple_test" eingefügt. Der erste Datensatz enthält einen einfachen Linestring, weil er seinen Innenbereich nicht schneidet. Der zweite Datensatz ist komplex, weil er seinen Innenbereich schneidet.

Oracle

INSERT INTO ISSIMPLE_TEST VALUES (
1,
sde.st_linefromtext ('linestring (10 10, 20 20, 30 30)', 0)
);

INSERT INTO ISSIMPLE_TEST VALUES (
2,
sde.st_linefromtext ('linestring (10 10, 20 20, 20 30, 10 30, 10 20,
20 10)', 0)
);

PostgreSQL

INSERT INTO issimple_test VALUES (
1,
sde.st_linestring ('linestring (10 10, 20 20, 30 30)', 0)
);

INSERT INTO issimple_test VALUES (
2,
sde.st_linestring  ('linestring (10 10, 20 20, 20 30, 10 30, 10 20,
20 10)', 0)
);

Die Abfrage gibt die Ergebnisse der Funktion ST_IsSimple zurück. Für den ersten Datensatz wird 1 zurückgegeben, weil der Linestring einfach ist. Für den zweiten Datensatz wird dagegen 0 zurückgegeben, weil der Linestring nicht einfach ist.

Oracle

SELECT pid, sde.st_issimple (g1) Is_it_simple
FROM ISSIMPLE_TEST;

PID 		Is_it_simple

1		1
2		0

PostgreSQL

SELECT pid, sde.st_issimple (g1) AS Is_it_simple
FROM issimple_test;

pid		is_it_simple

1		t
2		f

7/10/2012