使用OpenStreetMap进行地图渲染

时间:2012-03-12 20:53:22

标签: openstreetmap mapnik

OpenStreetMap是否只提供GIS数据?要渲染地图并使用基于浏览器的UI来显示带有数据的地图,开发人员是否需要使用像Mapnik这样的东西?

4 个答案:

答案 0 :(得分:4)

OpenStreetMap提供数据是,您需要使用特定工具来制作地图。您首先需要将数据置于真正的GIS格式中,而OSM则不是这样。想想PostGIS,osm2pgsql工具就是为此而设计的。然后,您将需要一个渲染工具,即制图引擎。您可以使用Mapnik或MapServer。 Tilemill或Kosmtik可以帮助您设计地图样式。 看看here

答案 1 :(得分:2)

答案 2 :(得分:1)

这里有一个更全面的OpenStreetMap数据渲染库列表,包括免费和商业。

http://wiki.openstreetmap.org/wiki/Renderer

披露:我是其中一个的开发者。

答案 3 :(得分:0)

OpenStreetMap将地图数据提供给广泛的,由不同下载和工具组成的生态系统,从而为开发人员提供了不同的地图制作和使用可能性的地图。这是我绘制的图表,其中包含以下内容:enter image description here

因此,数据以“行星下载”的形式来自OpenStreetMap的核心,这是一大堆笨拙的XML(以及diff),但是从那里它散发出给开发人员一系列其他产品,许多其中由第三方提供。 “ OpenStreetMap&Friends”共同提供了许多可能性。

如果您想运行自己的渲染系统,那么可以,Mapnik是一个不错的选择。功能强大且可扩展(最成功的OSM切片服务器运行Mapnik),但需要进行一些设置。通常,您将OSM XML数据加载到PostGIS中,然后从中运行Mapnik(tutorials on switch2osm.org

如果您倾向于运行自己的渲染系统(对于更轻量的Web开发任务,这似乎很合理!),则不必!您可以配置LeafletJS或OpenLayers或其他工具,以从其他人运行的图块服务器中获取地图图块。有很多提供商。请参阅providers list on switch2osm.orgTile Servers列表。