4 votos

Mezcla invertido linestring en el orden correcto en postGIS

Quiero combinar linestring en el orden correcto en postGIS, pero a veces se invierte de manera algo como esto :

select astext(linemerge(ST_union(
ST_GeomFromText('LINESTRING(3 3, 2 2)'),
ST_GeomFromText('LINESTRING(1 1, 2 2)'))));

devuelve esto :

"LINESTRING(1 1,2 2,3 3)"

Pero quiero que esto :

"LINESTRING(3 3, 2 2, 1 1)"

Yo realmente no sé qué hacer,

Gracias.

4voto

axk Puntos 2147

Si sólo quieres invertir una geometría puedes usar simplemente ST_Reverse (devuelve la geometría con el orden de los vértices invertido).

Si el problema es que quieres mantener un orden arbitrario, no creo que puedas hacerlo usando ST_Union (la definición de ST_Union ser unión de conjuntos de puntos (como en la ordenación no está garantizada).

1voto

Vasu Puntos 11

Dáselo a diciu. Sólo quiero añadir un ejemplo:

select ST_AsText(ST_Reverse(ST_GeomFromText('LINESTRING(3 3, 2 2)')));

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X