问题标签 [osm.pbf]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1631 浏览

python - 从 python 中的 .osm.pbf 文件中提取数据

我已经从http://download.geofabrik.de/europe.html下载了英国的 .osm.pbf 文件,我希望能够提取每个节点的所有经纬度。这可能吗?

如果我能把它变成某种python格式那就太好了

0 投票
1 回答
138 浏览

export - 提取地址 zip 街道城市形式 openstreetmap pbf 文件

要建立一个德国城市数据库,我可以在其中查询具有定义距离的杯子周围的城市,我想从 pbf 文件中将地址数据导出到 mysql 数据库中。我已经找到了一个很好的来源,我可以在其中获取 pbf 文件,但找不到导出我想要/需要的数据的工具。也许有人已经遇到了同样的问题,可以通过此处的链接帮助我。

我只需要邮编、城市、街道和纬度/经度,没有地图数据或矢量数据

乔治

0 投票
0 回答
174 浏览

reactjs - 尝试运行使用 react-leaflet 显示的本地 tileserver 地图时出现跨域读取阻塞

我无法让react-leaflet显示来自本地maptiler服务器的地图。但是,我可以获得以下显示 maptiler 地图的简单传单代码:

传单

对于 react-leaflet 等效项,我尝试了以下所有 url,所有这些都只显示一个空地图

反应传单

但是,我可以在没有 React 或传单脚本的情况下直接访问这些 URL 中的任何一个,它们都可以按预期工作。

在我使用 nginx 的情况下,我只是代理

所以问题似乎出在 react-leaflet 上。在开发控制台中,所有 URL 都会给我一个 CORB 警告:

很长一段时间以来,我认为这是一个 CORS 问题,因此 nginx 带有标头,并且感到困惑,因为tileserver响应Access-Control-Allow-Origin: *中的标头确实有。

正确的标题

我曾尝试使用 nginx 添加一个Cross-Origin-Resource-Policy: cross-origin但没有成功。我认为它需要添加到响应标头中,我不确定如何使用 maptiler/tileServer-gl 的容器化版本来完成。

我也想知道这是否是红鲱鱼,因为文档确实说:

在大多数情况下,被阻止的响应不应影响网页的行为,并且可以安全地忽略 CORB 错误消息。~来源

我还可以添加crossOrigin={true}到 TileLayer 组件,在使用直接 URL 的情况下可以消除 CORB 警告。但是,问题仍然存在,地图是灰色的。在 dev-tools 网络选项卡中,没有从 tileserver 检索任何内容,但也没有任何错误。

那么 CORB 会阻止请求吗?为什么当我使用 react 作为前端而不是当我使用 vanilla JS 时这样做?

0 投票
0 回答
26 浏览

python - 哪种类型的地图内容仅在离线模式下行驶并使用 python 进行管理?

我使用了 osm 和 osm.pbf,但我遇到了一些问题。我管理这些类型,使用 pyrosm 库并获得了驱动网络,但它的输出是非常静态的。此外,道路没有名称。我只想在离线地图中使用带有名字的道路。有没有为此目的的地图?

0 投票
1 回答
34 浏览

postgresql - 如何将 nominatim 文件转换为 osm 文件 pbf?

我有一个来自 nominatim 的 postgresql 的备份文件。现在我想把那个备份文件转换成 OSM 的 PBF 文件,可以吗?如果是的话给我一些关于转换的建议。非常感谢

0 投票
1 回答
28 浏览

rendering - 将 Openlayer vectortile 自定义渲染函数用于矢量图块时出错

使用 Openlayer vectortile 自定义渲染函数矢量图块时出错 Openlayer 层允许设置自定义渲染函数,如https://openlayers.org/en/latest/apidoc/module-ol_layer_Layer-Layer.html中所述。它说渲染函数将帧状态作为输入,并期望返回一个 HTML 元素。这将覆盖图层的默认渲染。我找到了一个较旧版本的 openlayers 的示例,但这不适用于 openlayers 6。我尝试使用https://openlayers.org/en/latest/apidoc/module-ol_renderer_canvas_VectorTileLayer-CanvasVectorTileLayerRenderer.html中提到的 CanvasVectorTileRenderer 未定义时自定义渲染功能一切工作顺利。但是当我添加客户渲染功能时,我收到错误消息说

我的代码如下所示:

我想我把事情搞混了,但是任何人都可以帮助在 openlayers 6 中为矢量切片创建自定义渲染器吗?

0 投票
0 回答
10 浏览

python - 读取 .pbf 网址

如何.pbf将 url 的文件扩展名读入 python?

例如,这是网址:

它包含来自隔壁应用程序的位置数据。但是,我无法在网上找到如何正确解析数据 - 有人说我不能,而其他人则提出了一些其他建议。

我查看了以下 stackoverflow 问题How to read this specific pbf file。我认为我的文件非常相似,最重要的答案提到我无法阅读它。因此,有没有办法阅读或不可能?