1

我想使用带有 OL3 的 GoogleMaps 创建地图。我已经使用 ol3-google-maps 来做到这一点。它有效。但仅在使用默认投影时。当我尝试使用其他投影(使用 proj4js)构建地图时,它没有。OSM 的相同代码可以正常工作。有谁知道问题出在哪里?是 ol3-google-maps 吗?还是 GoogleMaps 有一些限制?

如果这是一个愚蠢的问题,请原谅我,但可能有几天我无法使用电脑 - 所以也不要自己挖。所以我希望有人能告诉我问题出在哪里。

    <script>

            proj4.defs("EPSG:2178","+proj=tmerc +lat_0=0 +lon_0=21 +k=0.999923 +x_0=7500000 +y_0=0 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs ");

            var extent = [3936040.28,4324573.90,7707927.89,9384064.69];

            var projection = ol.proj.get('EPSG:2178');

            projection.setExtent(extent);

            var googleLayer = new olgm.layer.Google();
            var view = new ol.View({
                projection: projection,
                center: [7466113.046828, 5959598.556178 ],
                zoom: 12
            });
            var map = new ol.Map({
                interactions: olgm.interaction.defaults()
                layers: [googleLayer],
                target: 'map',
                view: view
            });

            var olGM = new olgm.OLGoogleMaps({map: map});
            olGM.activate();
    </script>

谢谢!

4

1 回答 1

1

Google Maps API(至少在 ol3-google-maps 中使用)不支持 Web Mercator (EPSG:3857) 以外的其他投影。

于 2017-01-09T12:39:54.617 回答