Message posté par : GEOFFROY DETRY
----------------------------------------
J'avais justement un PG13 / PostGIS 3.1.1 – Geos 3.8.1 sous la main pour des tests.
Après y avoir passé le WE, on observe clairement des différences de comportement entre les
deux versions de PostGIS. Sur la v2.4, le résultat du st_polygonize ne renvoie pas un
polygone et sur le v3.1, ce sont deux polygones qui sont absents (le même que sur la v2.4
+ un petit autre situé juste à sa droite).
Je partage en PJ le dataset des arcs après snapping sur la v Postgis 3.1. Les polygones
"à problème" reposent sur les arcs internes idarc = 18 et idarc=29
Si on détermine la distance de ces arcs à l'arc provincial le plus proche à partir des
nœuds début-fin, le résultat indique 0m pour les deux arcs
-----------------
Code :
with tmp as (
select idarc, st_startpoint(geom) as startpt_geom,
st_endpoint(geom) as endpt_geom
from dts_arc_snap
)
select p.idarc, t.dist_start_prov,dist_end_prov
from tmp p
cross join lateral (
select a.geom <-> p.startpt_geom as dist_start_prov
from dts_prov_arcs a
order by a.geom <-> p.startpt_geom
limit 1)t
cross join lateral (
select a.geom <-> p.endpt_geom as dist_end_prov
from dts_prov_arcs a
order by a.geom <-> p.endpt_geom
limit 1)s
where idarc in (18,29)
-----------------
Par contre l'exécution de ST_Touches renvoie false sauf pour le point d'arrivée de
l'arc 18. Mais c'est également valable pour d'autres arcs qui se ferment
correctement
-----------------
Code :
select *, st_touches(a.geom, b.geom) from dts_arc_snap a, dts_prov_arcs b where idarc
in(18,29)
-----------------
Et donc les deux polygones sont absents
-----------------
Code :
with
tmp as (
select st_union(geom) as geom
from dts_arc_snap
) select (st_dump(st_polygonize(geom))).geom
from tmp;
-----------------
J'ai prolongé un des arcs pour le faire s'intersecter avec les limites
provinciales (aux pts start/end). Le polygone est alors correctement construit.
Je vais continuer à investiguer afin d'améliorer la qualité du snapping avant
d'envisager de prolonger les arcs artificiellement.
Geoffroy
----------------------------------------
Ce message est accompagné de fichiers, pour les télécharger, suivre le lien ci-dessous.
----------------------------------------
Le message est situé
https://georezo.net/forum/viewtopic.php?pid=340492#p340492
Pour y répondre : geobd(a)ml.georezo.net ou reply de votre messagerie
Pour vous désabonner connectez-vous sur le forum puis Profil / Abonnement
--
Association GeoRezo - le portail géomatique
https://georezo.net