Je souhaite transformer un vieux projet API1.3 pour l'adapter avec le "loader"
Mon vieux projet avait la structure suivante:Aujourd'hui, je charge avec le "loader" toutes mes couches, sans passer par viewer.getMap().addLayer(). J'ai donc quelque chose qui a la structure suivante
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 .... function effac(feature) {...} function affich(feature) {....} function initGeoportalMap() {.... var zon= viewer.getMap().addLayer("KML","ZON",.....) var ass= viewer.getMap().addLayer("KML","ASS",....) .... var hoverCtrlOpts= OpenLayers.Util.extend( viewer.getMap().getPopupDefaults('KML'), { onUnselect: effac, onSelect:affich ,hover:true }); var hoverCtrl= new OpenLayers.Control.SelectFeature([ass,zon], hoverCtrlOpts); viewer.getMap().addControl(hoverCtrl); viewer.getMap().events.on({ "changelayer":Geoportal.Map.onVisibilityChange, scope:hoverCtrl}); ....}
Evidemment dans ces conditions, la variable var hoverCtrl= new OpenLayers.Control.SelectFeature([ass,zon], hoverCtrlOpts); n'a plus aucun sens puisque les variables "ass" et "zon" ne sont plus définies.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 .... function effac(feature) {...} function affich(feature) {....} iv= Geoportal.load( 'viewerDiv',.... overlays:{ 'kml':[{name:"ZON",....}}}, {name:"ASS",....}}}]....})....
Je ne sais pas comment retrouver cette interaction au survol.
Dois-je obligatoirement extraire les deux couches overlays kml (ass et zon) du loader et les ajouter via un viewer.getMap().addLayer() (ce qui me chagrinerait) ou peut-on "assigner" un nom de variable ("ass" ou "zon") aux deux overlays dans le loader? Ou une autre astuce que j'ignore....
Partager