5

我正在创建一个使用在线和离线地图的 iPhone 旅游应用程序。对于离线地图,我希望允许用户下载他们感兴趣的区域(例如伦敦)的 mbtiles 文件。地图应该有道路等信息,这些信息已经在 OpenStreetmap 中找到。我知道诸如http://metro.teczno.com/之类的网站用于下载 Openstreetmap 提取。创建 Openstreetmap 提取的 mbtiles 文件的最简单方法是什么?注意:不需要地图定制。我尝试使用 TileMill,但无法看到正确的地图信息。关于这方面的大多数信息都说要加载很多其他工具,并且这些说明不容易遵循或者它们不起作用,并且由于我不需要地图自定义,因此真的不需要它。我的主要/首选工作环境依次是 Windows、Mac 和 Ubuntu(在 Windows 下使用 VirtualBox)。

谢谢汤姆

4

3 回答 3

4

这些事情从来都不是很容易,但我试图在Maperitive中让它们尽可能简单。几天后我将发布一个支持从 OSM XML 文件创建 MBTiles 的新版本。同时,您可以阅读较早的教程,该教程将切片生成为 Web 地图服务器的单个文件。由于您不需要地图定制,您可以跳过一些步骤:http ://braincrunch.tumblr.com/post/9921938947/maperitive-tutorial-a-hiking-web-map-in-ten-easy-steps

于 2012-07-30T16:34:18.570 回答
4

几天前,我在我的网站上写了一篇文章- 这是关于如何从 OSM 数据生成 PNG 光栅 mbtile 的分步过程。

我是 mbtiles 的重度用户,几周前我确实设法部署了一个基于node.jsMapnik的解决方案。其非常快速、方便的单行命令解决方案。

要遵循的步骤是:

  1. 下载并安装 node.js - 确保它是32 位版本,否则Mapnik将无法工作。

  2. 如果您还没有 Python,请安装它。

  3. 在 node.js 控制台中安装 Mapnik 执行命令:

    npm install -g tl @mapbox/mbtiles tilelive-http 
    
  4. 安装成功后应该可以执行命令:-z(最小缩放级别),-Z(最大缩放级别)

    tl copy -z 0 -Z 15 -b "19.481506 49.050920 20.407791 49.319751"  "http://a.tile.openstreetmap.org/{z}/{x}/{y}.png" mbtiles://./tatra.mbtiles
    

这将为 Tatra 山脉创建测试 mbtiles 文件,如果您在 Windows 上,该文件将位于 C:\Users{your_user_name}\ 文件夹

由于声誉低下,我无法包含 URL 或图片,但我已在此处记录了该过程。

于 2015-02-25T22:39:14.727 回答
0

您可以使用此工具从任何 .osm.pbf 文件创建 MBTiles - https://github.com/systemed/tilemaker

  1. 从Geofabric或任何其他来源下载 .osm.pbf 文件

  2. 下载瓷砖制造商

  3. 执行以下命令

tilemaker --input netherlands.osm.pbf --output netherlands.mbtiles --process resources/process-openmaptiles.lua --config resources/config-openmaptiles.json 

您可以在这篇博文中了解更多信息 - https://blog.kleunen.nl/blog/tilemaker-generate-map

于 2021-08-19T18:32:53.933 回答