ST_IsSimple

Определение

ST_IsSimple возвращает значение 1 (Oracle) или t (PostgreSQL), если объект ST_Geometry простой в соответствии с определением Open Geospatial Consortium (OGC). В противном случае возвращается значение 0 (Oracle) или f (PostgreSQL).

Синтаксис

sde.st_issimple (g1 sde.st_geometry)

Тип возврата

Булево

Пример

Создается таблица issimple_test с двумя столбцами. Тип данных столбца pid – smallint, столбец содержит уникальный идентификатор для каждой строки. В столбце g1 ST_Geometry хранятся простой и непростой образцы геометрии.

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

Инструкция INSERT вставляет две записи в таблицу issimple_test. Первая строка является простой, так как она не пересекается с собственными внутренними точками. Вторая строка является непростой по определению OGC, так как она пересекается с собственными внутренними точками.

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)
);

Запрос возвращает результаты функции ST_IsSimple. Первая запись возвращает 1, так как строка linestring является простой, а вторая запись возвращает 0, так как строка не является простой.

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
12/10/2012