我可以将Google地图/API与OpenLayers集成吗? [英] Can I integrate google map/api with openlayers?
本文介绍了我可以将Google地图/API与OpenLayers集成吗?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有集成了必应地图的Open Layers。我想转换这个目前的系统与谷歌地图,而不是冰地图。我已经用必应地图做过行程规划、绘制形状、搜索位置、添加注解、添加图层等。
我也可以使用Google地图执行上述功能吗?
推荐答案
以前有人问过这个问题,但有些答案过于否定,主要是因为OpenLayers示例非常糟糕。
与Bing不同,Google不允许在OpenLayers中直接使用其地图切片,而且您不能在Google Maps API中使用OpenLayers代码,因此您需要重写大部分代码。
但是,可以使用Java脚本将OpenLayers地图和控件放置在Google地图的顶部。OpenLayers给出了一个非常糟糕的示例,说明如何使用OpenLayers3来做到这一点,并随后将其删除。这是在OpenLayers4中运行副本,当地图缩放时,这两个层非常明显地看起来严重不同步。然而,通过在Google地图追赶时临时隐藏覆盖的OpenLayers层和/或最小化OpenLayers缩放持续时间以缩短追赶时间,可以显着改善体验。再加上一些小问题,比如重置OpenLayers字体大小以使其不继承底层Google地图的较小大小,以及隐藏或重新定位两组属性以避免其中一组遮挡另一组属性,这些都改善了用户体验。谷歌还有一个选项可以禁用缩放动画,但现在不再提供了。这里是一个使用这些调整运行的修订示例http://mikenunn.16mb.com/demo/ol5-google-demo.htm它使用了一个层切换器,因此您可以比较缩放半透明地质层与普通OpenLayers OSM层和底层Google地图时的效果。如果你已经有了很多OpenLayers代码,你可能偶尔会想要在Google背景下使用这些代码,这是值得考虑的。
这篇关于我可以将Google地图/API与OpenLayers集成吗?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文