将 osm 映射转换为 mbtiles

问题描述 投票:0回答:1

我正在开发一个完全离线的项目(Windows),前端处于反应状态,我使用react-leaflet库显示底图,并且我通过本地存储的XYZ目录文件的节点后端提供底图。我正在尝试寻找更好的解决方案来为我的前端提供地图文件。本地存储的 XYZ 目录文件很大,当我的最终用户需要在前端显示新地图时,这会很痛苦。截至目前,我使用 QGIS 作为 XYZ 目录创建新地图并将其发送给他们,他们必须将整个文件夹复制到项目目录。我正在寻找一种解决方案,他们可以从前端上传地图文件(如 osm 或任何其他现成的格式),并由节点后端进行转换。这样我的客户就不必直接访问项目目录。

所以我想我正在寻找的是一个在节点后端将 osm 文件转换为 mbtiles 格式或 xyz 目录文件格式的解决方案,以便可以将其提供给我的 React 应用程序。这可能吗?

PS:我是 GIS 的初学者。

我尝试使用tilerser-gl,并且能够使用mbtiles,由于尺寸较小,这是比xyz 文件更好的选择。但我宁愿让用户从 geofabrik 下载 osm 文件,并在需要新地图时从前端上传。

leaflet gis openstreetmap react-leaflet mbtiles
1个回答
0
投票

如果您想生成自己的地图图块,请查看planetiler,它是专门为从 OSM 数据为地球生成 MBTiles(或类似的容器格式)而设计的。这需要一些相当重要的资源,但如果您真的想自己执行此操作并了解您想要的模式,这是可能的。

如果图块模式适合您,您还可以查看 protomaps 以获得易于下载的版本。

最后,您还可以使用Stadia MapsMapbox等商业产品(完全公开,我是Stadia Maps的联合创始人)。

我在您的评论中看到您也在寻找卫星图像。 OSM 实际上只是数据库形式的地球上的“矢量”信息(道路、兴趣点等)。对于图像,唯一的免费选项是相对较低的分辨率。如果您想要相当最新的高分辨率无云图像,您可能需要支付托管解决方案的费用,或者从MaxarSI ImagingAirbusPlanet等供应商购买图像。购买图像并不便宜,但如果您感兴趣的区域相当小,那么对于离线解决方案来说可能是有意义的。

© www.soinside.com 2019 - 2024. All rights reserved.