ST_ExteriorRing

Definición

ST_ExteriorRing devuelve el anillo exterior de un polígono como una cadena de texto de líneas.

Sintaxis

sde.st_exteriorring (pl1 sde.st_geometry)

Tipo de devolución

ST_LineString

Ejemplo

Un ornitólogo, desea estudiar la población de aves en varias islas, sabe que la zona de alimentación de las especies de aves en la que está interesado está restringida a la línea costera. Como parte de su cálculo de la capacidad de carga de las islas, el ornitólogo requiere los perímetros de las islas. Algunas de las islas son tan grandes que tienen varios lagos en ellas. Sin embargo, la costa de los lagos está habitado únicamente por otras especies de aves más agresivas. Por lo tanto, la ornitólogo requiere el perímetro de solo el anillo exterior de las islas.

Las columnas de Id. y de nombre de la tabla de islas identifica de cada isla, mientras que la columna del polígono de tierra almacena la geometría de la isla.

CREATE TABLE islands (id integer, name varchar(32), land sde.st_geometry);  INSERT INTO islands VALUES ( 1, 'Bear', sde.st_polygon ('polygon ((40 120, 90 120, 90 150, 40 150, 40 120),(50 130, 60 130, 60 140, 50 140, 50 130),  (70 130, 80 130, 80 140, 70 140, 70 130))', 0) );  INSERT INTO islands VALUES ( 2, 'Johnson', sde.st_polygon ('polygon ((10 10, 50 10, 10 30, 10 10))', 0) );

La función ST_ExteriorRing extrae el anillo exterior de cada polígono de isla como una cadena de texto de líneas. La longitud de la cadena de texto de líneas se calcula según la función ST_Length. Las longitudes de la cadena de texto de líneas se resume según la función SUM.

Oracle

SELECT SUM (sde.st_length (sde.st_exteriorring (land))) FROM ISLANDS;  SUM(ST_LENGTH(ST_EXTERIORRING(LAND)))                              264.72136

PostgreSQL

SELECT SUM (sde.st_length (sde.st_exteriorring (land))) FROM islands;  sum  264.721359549996

Los anillos exteriores de las islas representan la interfaz ecológica que cada isla comparte con el mar.


3/6/2012