Referência e Guia do Usuário

ST_Boundary

ST_Boundary toma um objeto de geometria e retorna seu limite combinado como um objeto de geometria.

Sintaxe

db2gse.ST_Boundary(g db2gse.ST_Geometry)

Tipo de retorno

db2gse.ST_Geometry

Exemplos

No seguinte fragmento de código, é criada uma tabela chamada BOUNDARY_TEST. BOUNDARY_TEST tem duas colunas: GEOTYPE, que está definida como varchar e G1, definida como geometria de superclasse. As instruções INSERT que se seguem inserem cada uma das geometrias de subclasse. A função ST_Boundary recupera o limite de cada subclasse que está armazenada na coluna de geometria G1. Observe que a dimensão da geometria resultante é sempre uma menor que a geometria de entrada. Os pontos e multipontos sempre resultam num limite que é uma geometria vazia, dimensão 1. As cadeias de linhas e cadeias de linhas múltiplas retornam um limite multiponto, dimensão 0. Um polígono ou multipolígono sempre retorna um limite de cadeia de linhas múltiplas, dimensão 1.

CREATE TABLE BOUNDARY_TEST (GEOTYPE varchar(20), G1 db2gse.ST_Geometry)
 
INSERT INTO BOUNDARY_TEST
VALUES('Point',
       db2gse.ST_PointFromText('point (10.02 20.01)',
                     db2gse.coordref()..srid(0)))
 
INSERT INTO BOUNDARY_TEST
VALUES ('Linestring',
       db2gse.ST_LineFromText('linestring (10.02 20.01,10.32 23.98,
11.92 25.64)', db2gse.coordref()..srid(0)))
 
INSERT INTO BOUNDARY_TEST
VALUES('Polygon',
       db2gse.ST_PolyFromText('polygon ((10.02 20.01,11.92 35.64,25.02 34.15,
                                   19.15 33.94, 10.02 20.01))',
                    db2gse.coordref()..srid(0)))
 
INSERT INTO BOUNDARY_TEST
VALUES('Multipoint',
       db2gse.ST_MPointFromText('multipoint (10.02 20.01,10.32 23.98,
11.92 25.64)', db2gse.coordref()..srid(0)))
 
INSERT INTO BOUNDARY_TEST
VALUES('Multilinestring',
       db2gse.ST_MLineFromText('multilinestring ((10.02 20.01,10.32 23.98,
11.92 25.64), (9.55 23.75,15.36 30.11))',
                     db2gse.coordref()..srid(0)))
 
INSERT INTO BOUNDARY_TEST
VALUES('Multipolygon',
       db2gse.ST_MPolyFromText('multipolygon (((10.02 20.01,11.92 35.64,
                                   25.02 34.15, 19.15 33.94,10.02 20.01)),
                                       ((51.71 21.73,73.36 27.04,71.52 32.87,
                                         52.43 31.90,51.71 21.73)))',
                     db2gse.coordref()..srid(0)))
 
SELECT GEOTYPE,
       CAST(db2gse.ST_AsText(db2gse.ST_Boundary (G1)) as varchar(280))
      "The boundary"
FROM BOUNDARY_TEST
 
 
GEOTYPE              The boundary
-------------------- ----------------------------------------------------------
Point                POINT EMPTY
Linestring           MULTIPOINT ( 10.02000000 20.01000000, 11.92000000
 25.64000000)
Polygon              MULTILINESTRING (( 10.02000000 20.01000000, 19.15000000
 33.94000000, 25.02000000 34.15000000, 11.92000000 35.64000000, 10.02000000
 20.01000000))
Multipoint           POINT EMPTY
Multilinestring      MULTIPOINT ( 9.55000000 23.75000000, 10.02000000
 20.01000000, 11.92000000 25.64000000, 15.36000000 30.11000000)
Multipolygon         MULTILINESTRING (( 51.71000000 21.73000000, 73.36000000
 27.04000000, 71.52000000 32.87000000, 52.43000000 31.90000000, 51.71000000
 21.73000000),( 10.02000000 20.01000000, 19.15000000 33.94000000, 25.02000000
 34.15000000, 11.92000000 35.64000000, 10.02000000 20.01000000))
 
  6 record(s) selected.
 


[ Início da Página | Página Anterior | Próxima Página | Índice | Índice Remissivo ]