宣传单+本地.osm文件

时间:2015-06-16 09:21:06

标签: javascript leaflet openstreetmap

我一直在使用leaflet.js来渲染地图,如leaflet getting started page所示:

L.tileLayer('http://{s}.tile.osm.org/{z}/{x}/{y}.png', { ...

我从openstreetmap下载了一个.osm文件(map.osm),我正在试图弄清楚如何从传单中使用这个文件:

L.tileLayer('file:///./map.osm/{z}/{x}/{y}.png/{z}/{x}/{y}.png', { ...

在其他情况下,我使用Mobile atlas creator下载地图图层并在传单中使用它们。它在目录结构中下载选定的地图,如zoom-x-y .png文件(如:file_system \ local_maps_dir \ 13 \ 4049 \ 2999.png,其中13是缩放范围4049和经度2999)。

但现在我需要加载或使用带有传单的.osm文件。

有没有办法做到这一点?我是否需要转换此.osm文件?

感谢大家的时间。

1 个答案:

答案 0 :(得分:4)

你不能。 Leaflet需要栅格tiles,而.osm(或.pbf)文件包含原始矢量数据。为了从矢量数据中生成栅格图块,您必须render它。这不能直接由Leaflet完成,而是需要外部工具。

可以使用MaperitiveTileMill在本地渲染切片。您可能需要另一个步骤来从生成的MBTiles中提取单个切片。