Referência e Manual do Usuário

LocateBetween

O LocateBetween pega um objeto de figura geométrica e duas localizações de medida e retorna uma figura geométrica que representa o conjunto de caminhos desconectados entre as duas localizações de medida.

Sintaxe

db2gse.LocateBetween(g db2gse.ST_Geometry, [measure] Double, [measure]5 Double)

Tipo de retorno

db2gse.ST_Geometry

Exemplos

A seguinte instrução CREATE TABLE cria a tabela LOCATEBETWEEN_TEST. LOCATEBETWEEN_TEST apresenta duas colunas: a coluna GID, que identifica exclusivamente cada linha e a coluna G1 de cadeia de multilinha, que armazena a figura geométrica de amostra.

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

A seguinte instrução INSERT insere duas linhas na tabela LOCATEBETWEEN_TEST. A primeira linha é uma cadeia de linhas múltiplas e a segunda é um multiponto.

INSERT INTO db2gse.LOCATEBETWEEN_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.LOCATEBETWEEN_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 8)',
 
db2gse.coordref()..srid(0)))

A seguinte instrução SELECT e o conjunto de resultados correspondente mostram a função LocateBetween localizando medidas entre as 6,5 e 7,5 inclusive. A primeira linha retorna uma cadeia de linhas múltiplas com várias cadeias de linhas. A segunda linha retorna um multiponto porque os dados de origem eram multipontos. Quando os dados de origem têm dimensão de 0 (ponto ou multiponto), é solicitada uma correspondência exata.

SELECT gid, CAST(db2gse.ST_AsText(db2gse.LocateBetween (g1,6.5,7.5))
       AS varchar(96)) "Geometry"
FROM LOCATEBETWEEN_TEST
 
GID         Geometry
----------- -------------------------------------------------------------------
          1 MULTILINESTRING M ( 27.01000000 19.38000000 6.50000000, 31.19000000
18.47000000 7.00000000,38.09000000 19.61000000 7.50000000),(27.40000000 22.1400
0000 6.50000000, 30.98000000 23.98000000 7.00000000,36.95000000 24.98000000 7.5
0000000)
          2 MULTIPOINT M ( 30.19000000 18.47000000 7.00000000, 30.98000000 23.9
8000000 7.00000000)
 
  2 record(s) selected. 


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