Hi,

the best way to do this is to issue a GetCapabilities request, parse the 
response with OpenLayers.Format.WMSCapabilities, and look for the layer's bbox 
or llbbox in the capabilities object. An untested snippet to show you what I 
mean:

var myLayerName = "my_layer";
var obj = new OpenLayers.Format.WMSCapabilities().read(response.responseText);
var capability = obj.capability;
for (var i=0, len=capability.layers.length; i<len; i++) {
    var layerObj = capability.layers[i];
    if (layerObj.name === myLayerName) {
        map.zoomToExtent(OpenLayers.Bounds.fromArray(layerObj.llbbox));
        break;
    }
}

Andreas.

On Nov 9, 2011, at 15:54 , Charles Galpin wrote:

> I'm drawing a blank on the best way to do this.  I have a wms layer (for 
> performance)  that I'd like to zoom to the data extent for, but it looks like 
> this is not available for a wms layer like you can for a vector layer.  
> 
> Is there a fast call I can make to get the extent only and then use this to 
> zoom?  I am using geoserver on the server side.  Any suggestions would be 
> appreciated.
> 
> Thanks,
> charles
> 
> _______________________________________________
> Users mailing list
> us...@lists.osgeo.org
> http://lists.osgeo.org/mailman/listinfo/openlayers-users



-- 
Andreas Hocevar
OpenGeo - http://opengeo.org/
Expert service straight from the developers.

_______________________________________________
Users mailing list
us...@lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/openlayers-users

Reply via email to