Pages: 1
- Sujet précédent - Détecter les linestring en y et obtenir les points de séparation - Sujet suivant
#1 Wed 20 June 2018 13:49
- tematim
- Juste Inscrit !
- Date d'inscription: 27 Oct 2017
- Messages: 7
Détecter les linestring en y et obtenir les points de séparation
Bonjour,
Je dois ajouter des éléments dans un réseau de linestring ordonnées d'un nœud maitre.
Je suis en SRID 2154.
Voici deux cas d'exemples :
Code:
"LINESTRING(890523.700571345 6411239.74867723,890521.03928381 6411220.37201695,890507.281769636 6411220.60267211,890495.651439927 6411195.15820796)" "LINESTRING(890523.700571345 6411239.74867723,890521.03928381 6411220.37201695,890513.157487788 6411196.55307941)"
Code:
"LINESTRING(887383.164323609 6408817.04180761,887368.622455488 6408797.9614047,887355.705527693 6408781.88262288)" "LINESTRING(887383.164323609 6408817.04180761,887368.622455488 6408797.9614047,887348.542909006 6408780.5274959)"
J'ai une requête qui retourne la liste des tous les points par rapport à une linestring et qui compare cette liste à elle même pour trouver les équivalences:
Code:
with contenu_geom as (SELECT ST_X(ST_PointN(geom,num)) as x,ST_Y(ST_PointN(geom,num)) as y,geom, code FROM ( select inf1.code, inf1.geom , generate_series(1, (select ST_NumPoints(geom) from (select geom FROM matable where code = inf1.code) as line)) as num from matable as inf1 where inf1.code in (liste d'ids) ) as u) SELECT c1.code, c1.y, c1.x, ST_SetSRID(ST_MakePoint(c1.x, c1.y), 2154) as point , (SELECT c2.code FROM contenu_geom as c2 where c1.x = c2.x and c1.y = c2.y and c1.code <> c2.code limit 1 offset 0) as cm0 FROM contenu_geom as c1 where c1.code in (liste d'ids) ) as g where g.cm0 is not null
Mais je n'arrive pas à correctement identifier tous les points de séparations, est-il possible de m'aider ?
Hors ligne
Pages: 1
- Sujet précédent - Détecter les linestring en y et obtenir les points de séparation - Sujet suivant