#1 Wed 09 June 2010 21:00
- tiolebucheron
- Participant actif
- Lieu: Rouen
- Date d'inscription: 26 Mar 2006
- Messages: 147
[MAPFISH] mapfish.widgets.LayerTree & Expression
Bonjour
Je suis à la recherche de l'option pour afficher la légende des classes Expressions contenu dans le Mapfile dans le mapfish.widgets.LayerTree
J'ai essayé
Code:
tree = new mapfish.widgets.LayerTree({
map: map,
el: 'pnl_tree',
model: model,
showWmsLegend: true,
plugins: [
mapfish.widgets.LayerTree.createContextualMenuPlugin(['opacitySlideDirect'])
]
});
tree.render();Avec le Mapfile suivant
Code:
LAYER
NAME "statut"
STATUS ON
TYPE POLYGON
CONNECTIONTYPE postgis
CONNECTION xx
DATA xx
CLASS
NAME "Foret_Public"
EXPRESSION ("[pf_code]" eq "1" or "[pf_code]" eq "2")
TEMPLATE "ttt"
STYLE
COLOR 153 153 153
END
END #CLASS
CLASS
NAME "Foret_Privee"
EXPRESSION ("[pf_code]" eq "4")
TEMPLATE "ttt"
STYLE
COLOR 0 153 0
END
END #CLASS
METADATA
"id_attribute_string" "all"
"wms_title" "Statut orêt IFN"
"wms_srs" "EPSG:27572"
"wms_featureid" "ogc_fid"
"wms_include_items" "all"
END
ENDCela ne fonctionne pas ![]()
Merci de votre aide Tio
Dernière modification par tiolebucheron (Wed 09 June 2010 21:01)
Hors ligne
#2 Fri 11 June 2010 08:43
- tiolebucheron
- Participant actif
- Lieu: Rouen
- Date d'inscription: 26 Mar 2006
- Messages: 147
Re: [MAPFISH] mapfish.widgets.LayerTree & Expression
Bonjour
J'ai utilisé le GeoExt.LegendPanel pour obtenir quelque chose de similaire.
Il faut un bug avec le tilecache http://www.geoext.org/pipermail/users/2 … 00813.html
Thanks Ryan...
But I found other solution...
I edited the setUrl method from LegendImage.Js...
Before
setUrl: function(url) {
this.url = url;
var el = this.getEl();
if (el) {
el.un("error", this.onImageLoadError, this);
el.on("error", this.onImageLoadError, this, {single: true});
el.dom.src = url;
}
},
My modification
setUrl: function(url) {
this.url = url.replace("tilecache.py?","
http://localhost/cgi-bin/mapserv.exe?map=Map.map&");
var el = this.getEl();
if (el) {
el.un("error", this.onImageLoadError, this);
el.on("error", this.onImageLoadError, this, {single: true});
el.dom.src = this.url;
}
},
Worked fine!
Thanks
Tio
Hors ligne


