#1 Tue 07 December 2010 17:22
[postgis 1.5] ST_linemerge ne conserve pas les M ou Z
Bonjour à tous,
Je cherche à construire un réseau de cours d'eau Pk métré sur BD Carthage, à partir des PK contenus dans les tronçons hydrographique.
En clair, j'ai des segments élémentaire exclusivement en LINESTRING, portant une mesure amont et une mesure aval. Aucun souci pour créer des géométries 3D avec la fonction ST_AddMeasure.
Je cherche ensuite à agréger l'ensemble des segments appartenant à un même cours d'eau pour obtenir un réseau pk métré simple à manipuler (plus simple qu'une liste de segments élémentaires).
La fonction ST_lineMerge me crée bien une géométrie unique en sortie (LINESTRING), mais perd les valeurs de M, qui se trouvent remplacées par 0.
Un St_collect est un contournement qui préserve les M, mais qui produit des multiLineString.
ST_Union perd également les M.
Un autre collègue éloigné semble avoir les mêmes soucis: http://www.mail-archive.com/
Hors ligne
#2 Wed 08 December 2010 09:50
- Nicolas Ribot
- Membre
- Lieu: Toulouse
- Date d'inscription: 9 Sep 2005
- Messages: 1554
Re: [postgis 1.5] ST_linemerge ne conserve pas les M ou Z
Bonjour à tous,
Je cherche à construire un réseau de cours d'eau Pk métré sur BD Carthage, à partir des PK contenus dans les tronçons hydrographique.
En clair, j'ai des segments élémentaire exclusivement en LINESTRING, portant une mesure amont et une mesure aval. Aucun souci pour créer des géométries 3D avec la fonction ST_AddMeasure.
Je cherche ensuite à agréger l'ensemble des segments appartenant à un même cours d'eau pour obtenir un réseau pk métré simple à manipuler (plus simple qu'une liste de segments élémentaires).
La fonction ST_lineMerge me crée bien une géométrie unique en sortie (LINESTRING), mais perd les valeurs de M, qui se trouvent remplacées par 0.
Un St_collect est un contournement qui préserve les M, mais qui produit des multiLineString.
ST_Union perd également les M.
Un autre collègue éloigné semble avoir les mêmes soucis: http://www.mail-archive.com/
Sinon, peut etre, garder un tableau des points initiaux, en 4D, puis tenter de mettre a jour les points des lignes mergées a partir de ce tableau, en testant une egalité geographique entre les nouveaux points ayant perdus la dimension M et les points initiaux ?
Je regarde si ca peut donner qqch et vous tiens au courant.
Nicolas
Hors ligne