【问题标题】:Creating custom Google (or OpenLayers?) maps创建自定义 Google(或 OpenLayers?)地图
【发布时间】:2009-10-11 22:19:26
【问题描述】:

我目前正在开展一个项目,该项目将项目映射到建筑物内的物理位置。我们在 GIS 系统 (ArcGIS) 中创建了一个地图,并且能够将项目解析为该地图上的适当形状 ID。

我们希望使用其中一种 API(例如 Google 地图或 Open Layers)创建网络地图,以显示此信息,将用户引导至地图上的正确位置,并在理想情况下突出显示特定位置(例如使用一个带阴影的多边形),或者至少用某种标记来识别它。

但是,我们对所有在线地图 API 都还很陌生,而且目前发现它相当难以应付。我们真正想要的只是一张带有我们自己的自定义图像的平面地图——我们并不真正关心地理参考或投影等。

有没有人有任何关于我们如何解决这个问题的提示或信息?即使只是一般性的指针也会有所帮助 - 当那里有这么多信息时,很难知道在哪里看!

干杯

【问题讨论】:

  • 听起来是个有趣的项目,进展如何?

标签: google-maps mapping gis arcgis


【解决方案1】:

如果您使用的是 ArcGIS Server,请使用 ArcCatalog 到 expose your data as a WMS

如果您没有 ArcGIS Server 许可,则可以使用 MapServerGeoServer 执行相同操作(即公开为 WMS)。

OpenLayers 支持添加WMS layers。有关示例代码,请参阅他们的示例部分。

干杯

【讨论】:

    【解决方案2】:

    OpenLayers 可以毫无问题地处理您自己的自定义图像地图。

    你可以看看这个例子:

    http://openlayers.org/dev/examples/image-layer.html

    当然你需要阅读 API 文档

    【讨论】:

      【解决方案3】:

      如果您使用 ArcGIS 创建地图,请使用 ArcGIS Server 在线提供地图。然后使用ArcGIS JavaScript API 构建您的Web 应用程序。有几个开箱即用的模板以及易于使用的示例,用于执行平移、缩放、选择、突出显示、红线等基本操作。

      创建您的地图服务,然后将您的自定义地图添加为Dynamic Map ServiceTiled Map Service(如果您已缓存)。执行Find(或Query,如果您有多个要突出显示的功能)。将GraphicFindResult 添加到您的GraphicsLayer

      Here's 一个更完整的例子。

      【讨论】:

      • 我发现这是最简单的方法,尤其是在贵公司没有义务开放标准的情况下。
      【解决方案4】:

      您还可以查看MapGuide OS 和(如果您没有工作室)Maestro。它是一个服务器端应用程序,可以轻松地从 Arc 中获取 SHP 文件。 IMO 唯一的缺点是内置的搜索和报告功能相当有限,但可以通过 API(C#、PHP 和 Java)进行扩展,并且它通过服务器上的持久进程相当集中(这可以使调试变得非常有趣)。

      融合/灵活(或者不管他们怎么称呼它)布局基于 OpenLayers API,但仍然相对较新。我相信你可以发布为 WMS 或 WFS(我没有亲自做过)。

      【讨论】:

        【解决方案5】:

        如果使用 ArcGIS Server,您还可以通过可供 OpenLayers 使用的 REST 端点公开您的影像和要素图层。查看 James Fee 的blog post on the topic

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多