← Retour aux issues

IndoorNotice showing up even if no indoor data

publié le , mis à jour
Avatar Codeberg de n4n5n4n5

Dans un espace commercial, certaines boutique sur à l'étage, quelqu'un a mis dont Niveau=1

https://wiki.openstreetmap.org/wiki/Key:level?uselang=en

The level=* key indicates the floor level where a feature (such as an amenity or a shop) is located in a building

Or indoorNotice s'affiche quand une feature a un level, mais ne vérifie pas s'il y a effectivement des plans indoorEqual

Donc la popup s'affiche, mais ne fait rien

image

image

Autres exemple ici IndoorNotice se déclenche car École primaire d'application Corderie possède level=5 alors qu'il n'y a pas d'indoor

https://cartes.app/#18.09/43.289902/5.369402

https://indoorequal.org/#map=18.22/43.290003/5.369041

  1. Avatar Codeberg de laemlaem

    Oui tout à fait, faut rendre notre algo qui déclenche le choix plus sélectif 👍 ce n'était qu'un premier jet. On peut éviter un appel réseau je pense, faut mieux utiliser les données des tuiles.

  2. Avatar Codeberg de n4n5n4n5

    Le problème vient d'ici, on choisi la source indoor or la source poi

    			const features = indoorSource
    				? // taken from https://github.com/indoorequal/maplibre-gl-indoorequal/blob/master/src/index.js#L273
    					map.querySourceFeatures('indoor', { sourceLayer: 'area' })
    				: map.querySourceFeatures('openmaptiles', {
    						sourceLayer: 'poi', // we'll miss some indoor groups with this too narrow query
    					})
    

    btw cela créer un bug: quand on va sur la map avec une URL /?perspective=non&indoor=1 indoor est chargé, mais dcp il est vide, donc on affiche pas le bouton indoorNotice, alors qu'il est dans l'URL

  3. Avatar Codeberg de laemlaem

    Oui c'est là enfin dans les lignes suivantes de useIndoorNotice qu'on doit être plus sélectifs.


✏️ Participer à la discussion