Guía y consulta del usuario

LocateAlong

LocateAlong toma un objeto de geometría y una medida para devolver como geometría varios puntos el grupo de puntos encontrados en la medida.

Sintaxis

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

Tipo devuelto

db2gse.ST_Geometry

Ejemplos

La siguiente sentencia CREATE TABLE crea la tabla LOCATEALONG_TEST. LOCATEALONG_TEST tiene dos columnas: la columna GID, que identifica de forma exclusiva cada fila, y la columna de geometría G1, que almacena la geometría de ejemplo.

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

Las siguientes sentencias INSERT insertan dos filas. La primera es una geometría varias series lineales; la segunda es una geometría varios puntos.

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)))

En la siguiente sentencia SELECT y el correspondiente conjunto de resultados, se indica a la función LocateAlong que busque puntos cuya medida es 6,5. La primera fila devuelve una geometría varios puntos que contiene dos puntos. Sin embargo, la segunda fila devuelve un punto vacío. Para funciones lineales (geometría con una dimensión mayor que 0), LocateAlong puede interpolar el punto; sin embargo, para varios puntos, la medida de destino debe coincidir exactamente.

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. 

En la siguiente sentencia SELECT y el correspondiente conjunto de resultados, la función LocateAlong devuelve una geometría varios puntos para ambas filas. La medida de destino de 7 coincide con las medidas de los datos fuente de geometría varias series lineales y de geometría varios puntos.

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. 


[ Principio de página | Página anterior | Página siguiente | Contenido | Índice ]