Pages: 1
- Sujet précédent - [Openlayers] Fonction Layer.clone() et gestion de deux cartes - Sujet suivant
#1 Fri 11 May 2012 11:29
- Daemons
- Participant occasionnel
- Lieu: Nice
- Date d'inscription: 15 Dec 2011
- Messages: 23
[Openlayers] Fonction Layer.clone() et gestion de deux cartes
Bonjour,
Dans une application Ext / GeoExt / OpenLayers, je dispose de deux cartes OpenLayers (dans deux onglets différents), synchronisées en zoom et center avec des listeners. Ma première carte est une carte "complète" avec un LayerTree, des couches de bases, des WMS et des WFS. La seconde carte est créée pour le moment avec une couche de base. Ces deux cartes ne sont pas visibles simultanément, mais bien l'une ou l'autre, étant dans deux onglets (Ext.TabPanel) différents.
Lors de l'affichage de la seconde carte, je clone une couche WFS de la 1ère, et je l'ajoute à la nouvelle carte affichée. Si ce WFS est visible dans la carte 1 au changement d'onglet, le clone crée donc une nouvelle layer qui sera toujours visible. Si je repasse sur la carte 1 et désactive mon layer WFS, le WFS dans la carte 2 sera toujours visible.
La fonction clone(), si je comprend bien le code source, et cet exemple, crée donc un deuxième layer qui aura la même configuration, les même features, etc, que le layer d'origine, au moment du clone. Le nombre de feature est donc doublé.
Si je construit ma carte 2 en ajoutant l'objet Layer.WFS déjà existant :
Code:
tab.map.addLayers([_vess_wfs]);
plutôt que
Code:
tab.map.addLayers([_vess_wfs.clone()]);
la carte 2 n'affiche pas cette couche, mais Firebug m'indique que le 2ème objet Map comporte bien ce layer...
J'aimerais que mes 2 cartes utilisent le même layer, de manière à ne pas doubler le nombre de features dans le navigateur, et à "synchroniser ses propriétés" (visibility, filter, etc...). Est-ce qu'OL propose ce type d'utilisation des layers ? Deux objets Map qui puissent utiliser le même objet Layer.WFS en même temps ?
Merci pour vos conseils !!
Dernière modification par Daemons (Fri 11 May 2012 11:30)
Hors ligne
Pages: 1
- Sujet précédent - [Openlayers] Fonction Layer.clone() et gestion de deux cartes - Sujet suivant