ST_PolyFromShape
Только PostgreSQL
Определение
ST_PolyFromShape получает форму мультиполигона Esri и идентификатор (ID) пространственной привязки, и возвращает полигон.
Синтаксис
sde.st_polyfromshape (esri_shape bytea, srid integer)
Тип возврата
ST_Polygon
Пример
Данный пример иллюстрирует, как функция ST_PolyFromShape может быть использована для создания полигона из представления формы Esri. В данном примере полигон сохраняется в столбце геометрии в таблице polys, затем столбец формы обновляется с помощью его представления формы (используя функцию ST_AsShape). В итоге используется функция ST_PolyFromShape, чтобы получить мультиполигон из столбца формы. Координаты x и y для данной геометрии следующие: (50, 20) (50, 40) (70, 30). Таблица polys содержит столбец геометрии, где хранится полигон; столбец формы, где хранится представление формы Esri для полигона; и столбец id, однозначно определяющий каждую запись.
CREATE TABLE polys (id integer unique, geometry sde.st_geometry, shape bytea);
INSERT INTO polys VALUES (
111,
sde.st_polygon ('polygon ((10.01 20.03, 10.52 40.11, 30.29 41.56,
31.78 10.74, 10.01 20.03))', 0)
);
UPDATE polys
SET shape = sde.st_asshape (geometry)
WHERE id = 111;
SELECT id, sde.st_astext (sde.st_polyfromshape (shape, 0))
AS polygon
FROM polys;
id polygon
111 POLYGON (10.01000000 20.03000000, 31.78000000 10.74000000,
30.29000000 41.56000000, 10.52000000 40.11000000, 10.01000000 20.03000000)