1

我正在尝试将 osm 数据加载到数据库中,并且我同时使用了 osm2p0 和 osm2pgrouting 并且一直意识到我没有看到任何引用街道宽度的东西。

这对我来说很重要,因为我正在编写一个程序来执行搜索和救援,其中街道的大小很重要,因为它可以限制哪些车辆可以使用哪些道路。

所以我开始查看 osm.xml 文件,但我没有看到任何引用街道宽度的内容。

http://wiki.openstreetmap.org/wiki/Key:width。它说关键应该是宽度。键宽描述了路或其他特征的实际宽度。

我是否遗漏了某些东西,或者 OSM 中实际上没有提供宽度。

4

2 回答 2

2

好吧,如果您查看正在使用的 OSM 标签,您会发现width=* 标签,它也可以用于高速公路。还有一些标记表示道路/方式的宽度:maxwidthlanes。所有这些标签都是可选的,你不应该期望全球覆盖......

我想最重要的标准(每条道路都存在)是道路分类本身。但是您需要将特定国家/地区的默认值考虑在内,这很棘手并且需要进行大量研究。

您可能希望使用TrafficMining创建一个自定义路由配置文件,该配置文件将道路宽度考虑在内以移动您的 HGV 车辆。也许Humaniterian OSM 团队已经在使用此类技术来协助灾难和应急响应方面拥有一些经验。

于 2014-08-15T17:13:43.727 回答
1

杰里米 - 巧合 - 我也在从事搜救工作......希望不在同一个国家(波兰),因为这意味着我们处于并发状态。

我认为麻烦在其他地方 - 在大多数情况下,标称道路宽度对于紧急车辆来说已经足够了 - 即使是消防车......障碍物通常是一种低宽度的桥梁,它被标记为 maxwidth 和其他类似 max%。

回到正题 - 您使用的是 osm2po,这在创建道路网络时非常好,但它并没有导入所有标签,例如 osm2pgsql - 这就是您无法在数据中看到此标签的原因。

也许有一些方法可以强制 osm2po 也导入这个标签,但我没有搜索,因为我在一个数据库中同时拥有 osm2po 和 osm2pgsql 数据集,所以我可以使用简单的空间查询在这两个数据集之间移动这个标签。

于 2014-08-15T18:02:24.067 回答