Referência e Guia do Usuário

LocateAlong

LocateAlong toma um objeto de geometria e uma medida para retornar como um multiponto do conjunto de pontos encontrados na medida.

Sintaxe

db2gse.LocateAlong(g db2gse.ST_Geometry, adistance Double)

Tipo de retorno

db2gse.ST_Geometry

Exemplos

A seguinte instrução CREATE TABLE cria a tabela LOCATEALONG_TEST. LOCATEALONG_TEST apresenta duas colunas: a coluna GID, que identifica exclusivamente cada linha e a coluna da geometria G1, que armazena a geometria de amostra.

CREATE TABLE LOCATEALONG_TEST (gid integer, g1 db2gse.ST_Geometry)

A seguinte instrução INSERT insere duas linhas. A primeira é uma cadeia de linhas múltiplas; a segunda é de multipontos.

INSERT INTO db2gse.LOCATEALONG_TEST VALUES(
1, db2gse.ST_MLineFromText('multilinestring m ((10.29 19.23 5,23.82 20.29 6,
                                        30.19 18.47 7,
45.98 20.74 8), (23.82 20.29 6,30.98 23.98 7,42.92 25.98 8))',
                                 db2gse.coordref()..srid(0)))
 
INSERT INTO db2gse.LocateAlong_TEST VALUES(
2, db2gse.ST_MPointFromText('multipoint m (10.29 19.23 5,23.82 20.29 6,
 30.19 18.47 7,45.98 20.74 8,23.82 20.29 6,30.98 23.98 7,42.92 25.98)',
 
db2gse.coordref()..srid(0)))

Na seguinte instrução SELECT e no conjunto de resultados correspondente, a função LocateAlong está direcionada para localizar pontos cuja medida seja 6,5. A primeira linha retorna um multiponto que contém dois pontos. No entanto, a segunda linha retornou um ponto vazio. Para recursos lineares (geometria com dimensão maior que 0), LocateAlong pode interpolar o ponto, no entanto, para multipontos, a medida de destino deve corresponder exatamente.

SELECT gid, CAST(db2gse.ST_AsText(db2gse.LocateAlong (g1,6.5)) AS
varchar(96))
"Geometry"
FROM LOCATEALONG_TEST
 
GID         Geometry
----------- --------------------------------------------------------------
 
          1 MULTIPOINT M ( 27.01000000 19.38000000 6.50000000, 27.40000000
22.14000000 6.50000000)
          2 POINT EMPTY
 
  2 record(s) selected. 

Na seguinte instrução SELECT e no conjunto de resultados correspondente, a função LocateAlong retorna multipontos para ambas as linhas. A medida de destino de 7 corresponde às medidas tanto nos dados de origem da cadeia de linhas múltiplas como de multipontos.

SELECT gid,CAST(db2gse.ST_AsText(db2gse.LocateAlong (g1,7)) AS varchar(96))
   "Geometry"
FROM LOCATEALONG_TEST
 
GID         Geometry
 
----------- --------------------------------------------------------------
          1 MULTIPOINT M ( 30.19000000 18.47000000 7.00000000, 30.98000000
 23.98000000 7.00000000)
          2 MULTIPOINT M ( 30.19000000 18.47000000 7.00000000, 30.98000000
 23.98000000 7.00000000)
 
  2 record(s) selected. 


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