Salut à toutes et à tous.
Notre société développe pour le compte d'un client un espace cartographique utilisant l'api géoportail. Cependant, je suis confronté à quelques derniers soucis techniques.
L’espace cartographique développé est actuellement visible à l’adresse suivante : http://www.sevre-niortaise.fr/ign/. Il a été développé en se basant sur les exemples de l'API disponibles sur le site de l'IGN.
Nous avons mis en places les couches IGN suivantes :
• TRANSPORTNETWORKS.RUNWAYS
• ELEVATION.SLOPES
• BUILDINGS.BUILDINGS
• GEOGRAPHICALGRIDSYSTEMS.MAPS
• HYDROGRAPHY.HYDROGRAPHY
• ADMINISTRATIVEUNITS.BOUNDARIES
• ORTHOIMAGERY.ORTHOPHOTOS
• CADASTRALPARCELS.PARCELS
• TRANSPORTNETWORKS.RAILWAYS
• TRANSPORTNETWORKS.ROADS
• UTILITYANDGOVERNMENTALSERVICES.ALL
• ELEVATION.LEVEL0
Dans cette liste, nous n’avons aucun problème d’affichage avec les couches suivantes :
• GEOGRAPHICALGRIDSYSTEMS.MAPS
• ORTHOIMAGERY.ORTHOPHOTOS
Les couches suivantes s’affichent bien dans le gestionnaire de couches, mais ne s’affichent pas sur la carte :
• ELEVATION.SLOPES
• BUILDINGS.BUILDINGS
• HYDROGRAPHY.HYDROGRAPHY
• ADMINISTRATIVEUNITS.BOUNDARIES
• CADASTRALPARCELS.PARCELS
• TRANSPORTNETWORKS.ROADS
Enfin les couches suivantes ne fonctionnent pas :
• TRANSPORTNETWORKS.RUNWAYS
• TRANSPORTNETWORKS.RAILWAYS
• UTILITYANDGOVERNMENTALSERVICES.ALL
• ELEVATION.LEVEL0
Mon instruction javascript pour appeler ces couches est la suivante :
viewer.addGeoportalLayers(["TRANSPORTNETWORKS.RUNWAYS", "ELEVATION.SLOPES", "BUILDINGS.BUILDINGS", "GEOGRAPHICALGRIDSYSTEMS.MAPS", "HYDROGRAPHY.HYDROGRAPHY", "ADMINISTRATIVEUNITS.BOUNDARIES", "ORTHOIMAGERY.ORTHOPHOTOS", "CADASTRALPARCELS.PARCELS", "TRANSPORTNETWORKS.RAILWAYS", "TRANSPORTNETWORKS.ROADS", "UTILITYANDGOVERNMENTALSERVICES.ALL", "ELEVATION.LEVEL0"]);
Je me demande s’il n’y a pas un paramètre obligatoire manquant ou si ces couches ont été activées ou non par notre client.
Autre problème concernant les couches IGN, mais cette fois-ci pour la désactivation. J’ai créé 2 boutons permettant de désactiver les couches ORTHOIMAGERY.ORTHOPHOTOS et GEOGRAPHICALGRIDSYSTEMS.MAPS. La première fois, mon bouton de désactivation fonctionne du premier coup, mais il faut que j’effectue un double clic sur le bouton pour que l’instruction javascript fonctionne par la suite.
Voici le code que j’utilise pour désactiver la couche GEOGRAPHICALGRIDSYSTEMS.MAPS par exemple :
1 2
| var layer=viewer.getMap().getLayersByName('GEOGRAPHICALGRIDSYSTEMS.MAPS');
viewer.getMap().removeLayer(layer[0]); |
Mon dernier soucis provient de la superposition des couches.
J’active d’abord la couche « Espèces envahissantes terrestres » dans la rubrique « Espèces envahissantes », puis j’active par la suite la couche « Inventaires zones humides » dans la rubrique « Zones humides ». Dès lors, je ne peux plus cliquer sur les différentes données de la première couche. Il faut que je désactive la seconde couche pour de nouveau y avoir accès. Existe-t-il un moyen de contourner ce problème et d’avoir accès aux données de toutes les couches ?
Voici le code que j’utilise pour ajouter une couche :
1 2
| viewer.getMap().addLayer(KML, “Espèces envahissantes terrestres”, “fichiers/PEET.kml”, {minZoomLevel:0, maxZoomLevel:20, opacity:1.0, visibility:true});
viewer.getMap().addLayer(KML, “Inventaires zones humides”, “fichiers/avancementZH_mai12.kml”, {minZoomLevel:0, maxZoomLevel:20, opacity:1.0, visibility:true}); |
Dans l’attente d’une réponse de votre part, je vous souhaite une agréable soirée.
Partager