[Users] How to create legend panel using OpenLayers.Layer.MapServer layer...

stela anders stelaanders at gmail.com
Mon Jan 11 14:47:36 CET 2010


Thanks Andreas...

The fact is :
 - Now I have all image symbol in png format
 - My mapfile is configured to generate PNG images
 - My legendPanel:

var legendPanel = new GeoExt.LegendPanel({
        defaults: {
            style: 'padding:5px',
            imageFormat: "image/png"
        },
        title: 'Legend',
        bodyStyle: 'padding:5px',
        width: 350,
        autoScroll: true
    });


But the legend url generated my GeoExt is:

http://localhost/cgi-bin/mapserv.exe?MAP=Map.map&TRANSPARENT=true&FORMAT=image%2Fgif&SERVICE=WMS&VERSION=1.1.1&REQUEST=GetLegendGraphic&STYLES=&EXCEPTIONS=application%2Fvnd.ogc.se_xml&LAYER=Roads

It is in GIF, why? If I manually change to "...&FORMAT=image%2Fpng" the
legend is generated fine...

Any help?

Thanks

Stella

2010/1/8 Andreas Hocevar <ahocevar at opengeo.org>

> stela anders wrote:
>
>> Thanks Andreas... ;)
>> displayInLayerSwitcher did the trick !!!
>>
>> I have some point layer with image symbol (.gif - 16x15) ... The legend
>> icon in that case stay ugly (only part of image appears)...
>>
>
> Not a GeoExt issue for sure. GeoExt just loads the image and displays it in
> its original extent and dimensions. But you could define a png24 format in
> your mapfile, and configure your legendPanel with something like
>
> defaults: {imageFormat: "image/png"}
>
>
>  Any idea why that? Or maybe is a restriction?
>>
>
> Again, you might want to ask about GetLegendGraphic on the mapserver users
> list or look in the mapserver docs.
>
> Regards,
> Andreas.
>
>
>> Thanks so much! U r saving my week ;)
>>
>> Stella
>>
>> 2010/1/8 Andreas Hocevar <ahocevar at opengeo.org <mailto:
>> ahocevar at opengeo.org>>
>>
>>
>>    stela anders wrote:
>>
>>        Hello Andreas...
>>
>>        All sublayers is with status ON, they are draw on map, but in my
>>        legend I got ONLY "Layer1" label printed...
>>        My layers:
>>                      OpenLayers.Layer.WMS("Layer1",
>>                       mycgi, {
>>                           map: mymapfile,
>>                           layers: ['Sublayer11','Sublayer12',
>>        'Sublayer13'],
>>                           format: "image/png",
>>                           transparent: "true"
>>                       }, {
>>                           isBaseLayer: true,
>>               visibility: true
>>                       }),
>>
>>
>>    The above should cause three GetFeatureInfo requests to be issued:
>>    one for each of your sublayers. If you just see the label, then
>>    MapServer does not send you an image on the GetFeatureInfo request.
>>    Here is what you can try: enable the Net panel on firebug and look
>>    at the GetFeatureInfo request that the browser issues. Copy them,
>>    open them in a browser window/tab, and fix your mapfile until they
>>    work (more help available in mapserver docs/lists).
>>
>>
>>                      OpenLayers.Layer.WMS("Layer2",
>>                       mycgi, {
>>                           map: mymapfile,
>>                           layers: ['Sublayer21','Sublayer22',
>>        'Sublayer23'],
>>                           format: "image/png",
>>                           transparent: "true"
>>                       }, {
>>                           isBaseLayer: false,
>>                           displayInLayerSwitcher: false,
>>                           visibility: true
>>                       }),
>>
>>
>>    This won't display anything, because you have set
>>    "displayInLayerSwitcher" to false.
>>
>>        So, What is your suggestion in building a legend to Map with
>>        GeoExt sublayers? I need all sublayers appears on my legend
>>        (each one has different images...)
>>
>>
>>    The LegendPanel does exactly that. It requests one image per
>>    sublayer (now that you provided a code snippet and I finally know
>>    what you meant by "sublayer"). My suggestion is: fix your mapfile so
>>    Mapserver can answer GetFeatureInfo requests correctly.
>>
>>    Regards,
>>    Andreas.
>>
>>    --    Andreas Hocevar
>>    OpenGeo - http://opengeo.org/
>>    Expert service straight from the developers.
>>
>>
>>
>
> --
> Andreas Hocevar
> OpenGeo - http://opengeo.org/
> Expert service straight from the developers.
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://www.geoext.org/pipermail/users/attachments/20100111/f4047fa3/attachment.htm 


More information about the Users mailing list