我开发了一个脚本来显示2层ob基本地图。
但它没有正确缩放。
我正在使用以下代码
你能建议我吗<script type="text/javascript">
var map, layer, select, hover, control;
function init(){
map = new OpenLayers.Map('map', {
controls: [
new OpenLayers.Control.PanZoom(),
new OpenLayers.Control.Permalink(),
new OpenLayers.Control.Navigation()
]
});
layer = new OpenLayers.Layer.WMS(
"States WMS/WFS",
"http://localhost:8080/geoserver/topp/wms",
{layers: 'topp:india_road',transparent: true}
);
select = new OpenLayers.Layer.Vector("Selection", {styleMap:
new OpenLayers.Style(OpenLayers.Feature.Vector.style["select"])
});
hover = new OpenLayers.Layer.Vector("Hover");
map.addLayers([layer, hover, select]);
var wmsLayer = new OpenLayers.Layer.Google('Google Layer',{} );
map.addLayer(wmsLayer);
map.setCenter(new OpenLayers.Bounds(143.83482400000003,-43.648056,148.47914100000003,-39.573891).getCenterLonLat(), 5);
}
</script>
答案 0 :(得分:0)
不正确缩放是什么意思?
你是否发现它们在你可以进行放大时与谷歌地图不匹配,或者直到你尝试平移然后图层不与谷歌地图保持一致时缩放工作?如果是这种情况,那么您可能会进一步放大Google地图服务所支持的范围。没有简单的方法来解决这个问题,我建议您使用以下设置更改允许的比例和缩放
如果您发现没有任何图层与Google背景相匹配。 I.E.它们看起来像是放大或偏移,然后很可能您的数据与谷歌地图图层的投影不同。 Google地图使用EPSG:900913作为其SRS。最简单的方法是让geoserver为您进行重新投影。转到地理服务器中的图层设置,确保正确设置了本机投影,并将声明的SRS设置为EPSG:900913。
如果这没有用,那么我认为我们需要更多关于问题究竟是什么的信息。