【问题标题】:Upgrade to Google Maps version 3, or go to OpenLayers?升级到 Google Maps 版本 3,还是转到 OpenLayers?
【发布时间】:2011-06-26 07:33:12
【问题描述】:

我负责开发一些用于创作地理数据集合的学术网络制图软件。这是一个用于创建历史地图的相当简单的界面。该项目基于 Google Maps v.2,由于 v.2 将在 2013 年停产,我们认为我们应该早日硬着头皮升级到 v.3。

事实证明,这是一项艰巨的工作,需要彻底重新思考我们应用程序中地图部分的工作方式。我们必须重写我们所有的自定义 Gmap 控件,重构应用程序的几个部分,以及其他一些大的变化——例如,v.3 没有像 v.2 那样与谷歌地球集成,我们使用谷歌地球很多。正因为如此,并且因为我们开始使用 Gmap 本身不支持的更多功能(如 WMS 地图),我一直在想是否值得从 Gmap 切换到 OpenLayers。据我了解,OpenLayers 具有 Google 地图的所有功能,原生支持 WMS 并支持更多数据格式,让我们无论如何都可以使用所有 Google 图像,并且可以与 KML 一起使用。

我向社区提出的问题是针对了解 OpenLayers 和 Google Maps 的人:您能否告诉我从 Gmap v.2 升级到 v.3 的工作量与从 Gmap v.2 升级到完整端口的情况相比如何?开放层?我们还应该注意哪些其他缺点?

我们最大的担忧之一:我们经常使用 Google 地球。如果我们使用 OpenLayers,我们必须自己同步 Earth 和 OpenLayers,但听起来这也是我们在 Gmap v.3 中必须做的事情。根据我的阅读,OpenLayers 没有对 Google 地球或任何类型的 3D 地理浏览器的原生支持,但有一些项目(如 this)试图弥合差距。这有多头疼?

【问题讨论】:

  • 仅供参考:截至 2011 年 9 月,OpenLayers (refer to this commit) 不再支持 Google 地图。无法满足 Google 的 ToS。

标签: google-maps openlayers


【解决方案1】:

非常有趣的问题!

升级到较新版本的 Google 地图应该会花费更少的时间,因为您已经有了工作代码,并且即使您必须进行重大更改,您也应该能够重用代码库的某些部分。这只是我的猜测,因为不看代码很难更精确:)

您仍然应该看看 OpenLayers。您提到您已经需要 WMS 支持,并且可能还有更多 OpenLayers 支持而 Google Maps 不支持的功能。 OpenLayers 支持多种数据源,是开放的并遵循 ​​OGC 标准。它支持谷歌地图,如果有一天你决定改用必应、雅虎或你自己的地图,你只需要对你的代码做一些小的改动。

【讨论】:

  • 谢谢!我想你是正确的。我们查看了 OpenLayers,甚至重新实现了 OpenLayers 中的部分代码作为实验,但我们认为 Google Maps 具有我们需要的足够功能,并且更容易坚持使用 Google。我真的很喜欢 OpenLayers,如果我重新开始,我可能会使用它,但我们的项目更容易保持现有的状态。
【解决方案2】:

我也遇到了同样的情况。我看了一下 openlayers 并开始在 openlayers 中实现一些功能。我能够用 openlayers 中的几行代码替换 SOOOOO 很多 google maps api 代码。所以我继续前进,很快我就在 openlayers 中重新开发,并将所需的 javascript 减少了一半以上!我还可以做得更多!从各种格式导出、导入现在只是代码行而不是人工行。一路 OpenLayers!

【讨论】:

    猜你喜欢
    • 2017-09-06
    • 2014-02-20
    • 1970-01-01
    • 2020-03-02
    • 2022-08-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-01-16
    相关资源
    最近更新 更多