Page 1 sur 1

[réparé] Importer dans un GPS type OSMand (devient : gestion polygones invalides)

Posté : 14 mai 2020, 10:50
par Xavier
Bj
Il est actuellement impossible de télécharger les données en vue de les importer dans un GPS type OSMand.
Il n'est plus possible de sélectionner de massif ce qui génère une erreur. Cela indépendant de média utilisé (tel, pc)
Ci-joint 2 copies d'écran.
Cdlt
Xavier

Re: Importer dans un GPS type OSMand

Posté : 14 mai 2020, 11:14
par sly
En effet, je confirme, le formulaire ne propose plus une liste correcte des massifs...

Je vais regarder

Re: Importer dans un GPS type OSMand

Posté : 15 mai 2020, 19:24
par sly
Voilà qui est corrigé.


Pour plus de détail, qui nous servira à nous par la suite pour nous en rappeler et comprendre :
l'éditeur de polygone du site permet, semble-t-il, de générer des polygones invalides au sens PostGIS une fois sauvegardé sur le site, ce polygone invalide faisait planter la partie exportation (calcul d'imbrication des massifs dans les zones) style :
Alpes -> Bauges, Belledonne
Pyrénnées -> Bigorre

Je viens de corriger les 4 polygones qui étaient dans ce cas (Bigorre, Alpes cotiennes, réserve biologique de chépukoi en allemagne, et une autre en vanoise) mais le problème pourrait se reproduire, je viens donc de forcer une contrainte sur la table interdisant les géométries invalides.
ALTER TABLE polygones ADD CONSTRAINT enforce_valid_geom CHECK (st_isvalid(geom));

Le dommage collatéral de ça, c'est que si un de nos modérateurs modifie un massif et ajoute "par erreur" une forme de 8 (appelé "auto-intersection" dans le langage postgis) genre :
9ZVRE.png
9ZVRE.png (8.88 Kio) Vu 1993 fois
Alors quand il va sauvegarder, ça ne va pas marcher (sans mot dire).
Soit on accepte cette contrainte, soit on peut forcer PG, à l'ajout, de rendre la forme valide, au risque qu'il décide de carrément supprimer la protubérance qui gêne...
( fonction st_makevalid )

Re: Importer dans un GPS type OSMand

Posté : 15 mai 2020, 22:24
par Dominique
Salut

Je confirme que c'est une forme parfaitement valide pour Openlayers (Leaflet aussi)
Comme c'est une forme qui n'a pas de sens pour un massif, je ne vois pas d'inconvénient à la tronquer.
Perso, je préfère la version qui enlève la protubérance (l'auteur verra si ça ne correspond pas à ce qu'il veut) que celle qui ne sauvegarde pas (s'il n'a pas compris, il sera tenté de recommencer son erreur)

Re: Importer dans un GPS type OSMand

Posté : 19 mai 2020, 22:43
par sly
La modif était assez facile mais quand j'essaye, j'ai quelques comportements bizarres de l'éditeur, une fois validé le polygone invalide, une partie du polygone disparaît, mais si je retourne le visualiser, il réapparaît en son entier...
Dans la base il semble valide (a priori coupé en plusieurs polygones)

Tests :
https://sly.refuges.info/nav/9966/massif/sablier/

Branche "polygons-invalides"
Dominique a écrit :
15 mai 2020, 22:24
Salut

Je confirme que c'est une forme parfaitement valide pour Openlayers (Leaflet aussi)
Comme c'est une forme qui n'a pas de sens pour un massif, je ne vois pas d'inconvénient à la tronquer.
Perso, je préfère la version qui enlève la protubérance (l'auteur verra si ça ne correspond pas à ce qu'il veut) que celle qui ne sauvegarde pas (s'il n'a pas compris, il sera tenté de recommencer son erreur)

Re: Importer dans un GPS type OSMand (devient : gestion polygones invalides)

Posté : 20 mai 2020, 16:06
par Dominique
Bien vu !
Petit patch dans le GIT

Re: [réparé] Importer dans un GPS type OSMand (devient : gestion polygones invalides)

Posté : 05 juin 2020, 10:23
par sly
Tiens, on dirait que j'avais oublié de répondre :
Patch appliqué, mis en place sur le www et tout semble rouler. Au final la solution que retient le st_makevalid n'est (semble-t-il) pas de supprimer la protubérance la plus petite comme on pourrait penser mais de découper le polygone pour en faire un multi-polygones composé de 2 anneaux ce qui ne gêne en rien les calculs du site.
Et devrait rester, à l'usage, limité à quelque rares réserves naturelles aux formes biscornues.

Re: [réparé] Importer dans un GPS type OSMand (devient : gestion polygones invalides)

Posté : 05 juin 2020, 10:48
par Dominique
sly a écrit :
05 juin 2020, 10:23
Et devrait rester, à l'usage, limité à quelque rares réserves naturelles aux formes biscornues.
Je dirais même limité aux cas où celui qui entre un massif a fait n'importe quoi, aucun contour physique ne justifiant le croisement de limites.
A noter que mon éditeur permet de fusionner et scinder des polygones (voir le mode d'emploi sur le côté gauche)

Re: [réparé] Importer dans un GPS type OSMand (devient : gestion polygones invalides)

Posté : 05 juin 2020, 10:55
par sly
Dominique a écrit :
05 juin 2020, 10:48
A noter que mon éditeur permet de fusionner et scinder des polygones (voir le mode d'emploi sur le côté gauche)
Yes j'ai vu ça, et ça permet justement de rattraper le coup quand la découpe non souhaitée a eu lieu