ST_PointOnSurface

Definición

ST_PointOnSurface toma un ST_Polygon o ST_MultiPolygon y devuelve un ST_Point garantizado para permanecer en su superficie.

Sintaxis

sde.st_pointonsurface (pl1 sde.st_geometry) sde.st_pointonsurface (mpl1 sde.st_geometry)

Tipo de devolución

ST_Point

Ejemplo

El ingeniero de la ciudad quiere crear un punto de etiqueta para cada huella de edificio. Las huellas de edificios se almacenan en la tabla buildingfootprints que se creó con la siguiente declaración CREATE TABLE:

CREATE TABLE buildings (building_id integer, footprint sde.st_geometry);
INSERT INTO buildings (building_id, footprint) VALUES ( 1, sde.st_polygon ('polygon ((0 0, 0 10, 10 10, 10 0, 0 0))', 0) );  INSERT INTO buildings (building_id, footprint) VALUES ( 2, sde.st_polygon ('polygon ((20 0, 20 10, 30 10, 30 0, 20 0))', 0) );

La función ST_PointOnSurface genera un punto que se asegura que debe estar en la superficie de las huellas de edificios. La función ST_PointOnSurface devuelve un punto que la función ST_AsText convierte a texto para que use la aplicación.

Oracle

SELECT sde.st_astext (sde.st_pointonsurface (footprint)) Surface_Points FROM BUILDINGS;  SURFACE_POINTS  POINT  (5.00000000 5.00000000) POINT  (25.00000000 5.00000000)

PostgreSQL

SELECT sde.st_astext (sde.st_pointonsurface (footprint))  AS Surface_Points FROM buildings;  surface_points  POINT  (5 5) POINT  (25 5)

7/11/2012