嗨,我需要在地图上显示一些 shapefile,因为我使用 geoserver、openlayers 和谷歌地图 V3,只要我不使用 OpenLayers.Layer.Google,它就可以工作,我可以看到我的 shapefile。这是我的工作代码:
var map = new OpenLayers.Map('map');
var ghyb = new OpenLayers.Layer.Google(
"Google Hybrid",
{type: google.maps.MapTypeId.HYBRID, numZoomLevels: 30,srs:'EPSG:2077'}
// used to be {type: G_HYBRID_MAP, numZoomLevels: 20}
);
var wms = new OpenLayers.Layer.WMS( "Italy WMS",
"http://vmap0.tiles.osgeo.org/wms/vmap0", {layers: 'basic'} );
var regioni_wms = new OpenLayers.Layer.WMS(
"comuni",
"http://localhost:8080/geoserver/wms",
{
layers: "prov2011_g" ,
transparent: "true",
format: "image/png",
srs:'EPSG:2077',
},
{isBaseLayer: false}
);
map.addLayer(regioni_wms);
//map.addLayer(ghyb);
map.addLayer(wms)
map.zoomToMaxExtent();
如果我将图层 ghyb 添加到地图中,则只渲染了我的多边形的一半,如果放大它就会消失。我不知道是否是墨卡托的问题,也不知道如何解决。