#1 Tue 17 May 2011 22:48
- zac
- Participant occasionnel
- Date d'inscription: 16 Apr 2009
- Messages: 27
[GeoExt] Utilisation couche WFS "cachée"
Bonjour,
Dans mon application webmapping, j'appelle des shapefiles stockés dans postgis en utilisant le protocole WMS et tilecache afin d'avoir un affichage plus rapide.
Toutefois, j'aimerais avoir accès aux données attributaires en appelant ces mêmes couches en WFS (je trouve cela plus simple qu'avec un WMSGFI). C'est pourquoi, l'idée serait de mettre les couches WFS en "visibility: false" et obtenir les données dans une popup.
J'arrive à afficher les données attributaires en utilisant l'exemple de Geotribu et le code suivant :
Code:
function init() {
/*
* Some code before
*/
// Instanciation du control selectFeature
options = {
hover: false,
// Fait reference a la fonction popUp
onSelect: popUP,
selectStyle :feature_style
};
sf = new OpenLayers.Control.SelectFeature(africaWFS, options)
map.addControl(sf);
sf.activate();
}
function popUP(e) {
// Je verifie qu'aucun popup n'existe deja
if(typeof popup!='undefined'){
popup.destroy();
}
//je definis les params de mon popup
var htmlContent = "<b>Pays : "+e.attributes.NAME+"</b><br /> <b><i>Region : "+e.attributes.REGION+"</b></i>";
var size = new OpenLayers.Size(20,34);
var offset = new OpenLayers.Pixel(-(size.w/2), -size.h);
//j'instancie mon popup
popup = new OpenLayers.Popup.FramedCloud(
e.fid,
e.geometry.getBounds().getCenterLonLat(),
null,
htmlContent,
null,
false,
null
);
//Je l'ajoute a la carte
map.addPopup(popup);
}Cela marche très bien, mais uniquement quand la couche est visible (probablement à cause du selectfeature). Lorsqu'elle est en "invisible", je ne vois même pas les paramètres WFS qui s'affichent dans Firefox et donc pas d'affichage de popup.
Auriez-vous une piste pour contourner ce problème ?
Merci d'avance
Hors ligne


