Open jpm-cbna opened 2 years ago
En effet, même soucis dans Occtax. Le chargement d'un GPX semble actuellement bien fonctionner seulement quand on veut localiser des objets ponctuels, et c'est clairement le cas qui a été testé lors des développements.
A améliorer quand on veut localiser des lignes ou des polygones.
@camillemonchicourt Ok, je ferai le point avec @TheoLechemia sur le sujet.
Pour l'instant, j'ai supprimé les lignes en question, passé à true
le paramètre editMode
du composant FileLayer. Cela fonctionne mieux.
Ceci dit, je ne suis pas certain que ces suppression n'aient pas des répercussions dans d'autres cas de figures...
Fichier leaflet-draw.component.ts, lignes 79 à 86 commentées les lignes suivantes:
// remove eventual filelayer layers
if (this.mapservice.fileLayerFeatureGroup) {
// delete only if fileLayerEditionMode = false
// if true we let the filelayer layer to draw it
if (!this.mapservice.fileLayerEditionMode) {
this.mapservice.removeAllLayers(this.map, this.mapservice.fileLayerFeatureGroup);
}
}
Fichier filelayer.component.ts, ligne 68, correction remplacement de false
par true
:
this.mapService.setEditingMarker(true);
Sur la carte qui s'affiche en édition du formulaire d'"Ajout d'une zone de prospection" du module Flore Prioritaire, nous utilisons les deux composants LeafletDraw et FileLayer.
Le fonctionnement attendu est de pouvoir charger un fichier GPX depuis le composant FileLayer puis à l'aide de LeafletDraw de dessiner le contour d'un polygone. Le problème c'est que lorsqu'on clique sur l'outil de dessin de polygone, toutes les géométrie téléchargées via le fichier GPX sont supprimées.
Inversement, lorsque je suis en édition d'une géométrie existante et que je veux charger un fichier GPX ma géométrie existante est supprimée !
Le problème semble venir de la ligne 79 du fichier leaflet-draw.component.ts et de la ligne 68 du fichier filelayer.component.ts. Le composant FileLayer semble pourtant avoir un paramètre input "editMode" présent pour activer ou désactiver la suppression qui est réalisé un peu plus loin dans le code.
Est ce que la présence des suppressions aux lignes indiquées ci-dessous est normale ? Est ce qu'il y a une autre façon d'utiliser ces deux composants sans rencontrer le problème exposé ici ?