IGNF / geoportal-extensions

French Geoportal Extensions for well-known javascript mapping libraries (Leaflet and OpenLayers)
https://ignf.github.io/geoportal-extensions/
Other
64 stars 33 forks source link

Comment obtenir les informations liées à un marker sur lequel a cliqué l'utilisateur ? #350

Closed liitfr closed 1 year ago

liitfr commented 1 year ago

Bonjour,

Tout d'abord merci pour votre travail ! Je souhaiterais pouvoir exploiter les données liées à un marqueur, indépendement du scénario d'utilisation qui a amené à sa création. En particulier, celui ci pourrait provenir indifférement de l'autocomplete ou de la recherche inversée en ayant dessiné un cercle

Est-ce possible techniquement, ou bien dois-je contourner geoportal extensions en passant par leaflet ? Je serais ravis d'obtenir un exemple.

Idéalement, je souhaiterais pouvoir récupérer les informations suivantes, telles que présentées ici

if type === "StreetAddress" :

number - Street number. postalCode - PostCode street - Street name city - City houseNumberInfos - additional street number information inseeCode - INSEE Code if type === "PositionOfInterest" :

type - Place name type postalCode - PostCode toponyme - Toponyme extraFields - additional place name properties inseeCode - INSEE Code si type = "CadastralParcel" :

codeCommuneAbs - when a parcel comes from a city that was absorbed by another, code of that old city. "000" otherwise. codeArrondissement - arrondissement identifiant - cadastral parcel code feuille - Parcel Sheet (eg. "1"). numero - Parcel Number (eg. "0041") section - Parcel Section (eg. "0D"). nomCommune - Parcel municipality name. codeCommune - Parcel municipality. codeDepartement - Parcel Department.

Votre environnement

Type d'issue

[ ] Report de bug [x] Requête d'une nouvelle fonctionnalité

Merci pour votre aide,

Contexte

Pouvoir étendre l'intégration de la carte dans une application en extrayant les informations liées à un marqueur choisi par l'utilisateur

Comportement attendu

un event listener ou un callback pour obtenir toutes les informations cartographiques liées à un marqueur sur lequel l'utilisateur a cliqué.

Comportement actuel

une bulle s'affiche, reprenant les informations disponibles.

liitfr commented 1 year ago

Rebonjour,

Je vois que vous avez passé le statut en need more information, je vais tâcher de préciser ma demande dans le cas où celle-ci n'était pas claire.

Je souhaite utiliser geoportal-extensions, et ce quelle que soit la librairie de carte sous-jacente (leaflet ou OL) Le front du projet est développé en React.

L'intégration de cartes est souhaitée afin de créer des entités métiers liées à un point géographique (c-a-d des coordonnées ainsi que toutes les informations disponibles (telles que listées précédement); adresse et / ou place et / ou parcelle)

L'extension geoportail est très complète, en revanche je ne comprends pas comment faire en sorte que l'utilisateur choisisse le point géographique qui l'intéresse dans un scénario type "Wizard", et continuer son use case métier.

Concrètement je souhaiterais synchroniser l'état de mon composant react au markeur sur lequel a cliqué l'utilisateur (c-a-d lorsque la bulle est visible)

Exemple arbitraire : image

Je n'ai pas trouvé dans la documentation de solution technique pour réagir au click d'un utilisateur sur un marqueur créé par l'extension geoportail ?

lowzonenose commented 1 year ago

Ok pour mettre un événement lors du clic sur le marker avec la structure "location".

lowzonenose commented 1 year ago

Ex. d’événement "reverse:onclickresult", il est porté par le contrôle :

var map  = L.map('map', {...});

var reverse = L.geoportalControl.ReverseGeocode({
  position : "topleft"
});

// reverse.on() est l’équivalent 
reverse.addEventListener("reverse:onclickresult", function (e) {
  console.error(e);
})

image

elias75015 commented 1 year ago

Bonjour, n'hésitez pas à faire vos retours sur la PR #351

liitfr commented 1 year ago

Bonsoir, 1000 mercis pour votre retour si réactif !

Cette nouvelle feature ne mériterait-elle pas d'être appliquée également au control search ? Scénario :

Cette nouvelle feature permettra effectivement aux développeurs un usage stateful de votre librairie. Le choix d'un marker par l'utilisateur permettra ainsi de récupérer les informations utiles en sortie de carte.

Merci encore, à bientôt

lowzonenose commented 1 year ago

Fonctionnalité disponible dans la prochaine release des extensions Leaflet

liitfr commented 1 year ago

super ! merci !

elias75015 commented 1 year ago

Release gp leaflet 2.2.9 réalisée