预渲染自己的openstreetmap栅格地图图块(png)的工作流程是什么?

时间:2018-07-16 09:24:46

标签: leaflet openstreetmap

我一周前发现了openstreetmap。在阅读了openstreetmap和其他地方的W​​iki之后,我决定对于我的项目,我想创建栅格地图图块并将其上传到我的域。我不需要所有缩放级别,因此决定使用缩放级别1-11,它将大大减小预渲染图块图像文件所需的大小,并使用Leaflet在客户端显示图块。在我看来,应该可以使用openstreetmap中的planet文件作为起点(或geofabrik.de),然后获取免费的地图样式(从某处获取),以便在为所选缩放渲染地图瓦片时使用水平。

我希望使用Windows预渲染栅格地图图块,但是如果我必须安装例如Ubuntu没问题。

我必须在计算机上安装和使用哪种免费软件,才能从osm行星文件创建缩放级别1-11的栅格地图图块。我可以直接以某种方式直接执行此操作,而不必先将行星文件中的数据导入数据库吗?

在上述过程中,如何指定在创建栅格图块(png)文件时要使用的地图样式?我可以使用openstreetmap.org上使用的样式吗? https://www.openstreetmap.org/#map=11/57.4717/12.0087 某处是否有列表,显示了可用于此类项目的各种免费地图样式?

我如何获取并安装必要的贴图样式文件,以便渲染器软件可以将那些贴图样式应用于生成的图像图块?

从某种意义上说,某些特殊软件必须处理切片请求,以便找出要交付给客户端的图像切片,我不需要特定的切片服务器。由于我将预渲染所有地图图块(.png图像文件),因此这些图块将被上传到Webhotel上的文件夹中,并且将仅通过Leaflet的请求为客户提供服务-Leaflet会自动请求正确的图像文件URL用于所选的缩放级别和要显示的区域。

据我所见,我不需要为整个世界预渲染5 592 405个图块(缩放级别1-11)。我想这将仅需要大约100 GB的存储空间。

1 个答案:

答案 0 :(得分:0)

  1. 我肯定会建议通过Windows进行Ubuntu,因为OSM工具在那里更加成熟。
  2. 在Ubuntu上,我将从here开始。的“样式表配置”部分涵盖“要使用的地图样式”。
  3. 您可以使用openstreetmap.org上使用的样式,实际上这是上面链接的switch2osm指南中的默认样式。
  4. 也许搜索与OSM的“标准”地图类型相似的其他地图样式的最简单方法是在github上搜索project.mml。不过,还有许多其他技术可用于创建地图。
  5. This guide与Switch2osm指南非常相似,其中一节专门介绍了可能会有用的强制渲染图块。
  6. 考虑到您的最终目标只是“所有区块”,您无需立即将整个星球加载到数据库中-您可以执行非洲,欧洲,北美等工作。这将减少所需服务器的规格。