如何将 OSM 路线图导出到 postGIS 数据库中? 另外,如果我有交叉路口的坐标,我可以得到我需要的路段吗?
如有任何帮助,我们将不胜感激。 谢谢!
最佳答案
您可以使用 osm2pgsql工具,支持osm xml (*.osm)。
基本用法:
osm2pgsql -d your_geo_database your-osm-data.osm.bz2
此命令将 your-osm-data.osm.bz2
文件导入到 your_geo_database
数据库中。
数据库必须存在并且必须加载 postgis 扩展。
是的,您可以通过使用 --bbox
选项和逗号分隔的坐标指定要导入的边界框来仅导入一部分 osm 数据,如 minlon、minlat、maxlon、maxlat,即:
osm2pgsql -l -d your_geo_database --boxx -0.5,51.25,0.5,51.75 you-osm-data.osm.bz2
你不能用一个点来指定你需要的路段,但是你可以围绕这个点构建一个边界框,即一个100m X 100m的正方形
类型
osm2pgsql --help
查看所有选项。
同样重要的选项是:
-l
: 以纬度和经度存储数据 (srid 4326)
-a
: 将 OSM 文件添加到数据库中而不删除现有数据。
-d -H -U -W -P
:数据库连接选项:数据库名称、主机、用户名、密码、端口。
如果您的 osm 文件太大,您可能需要使用一些优化内存使用的选项,即:--cache-strategy
、--slim
或 --unlogged
关于postgresql - 如何在 postGIS 中存储路线图?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30922154/