好几年没写博客了,最近博士小论文扩展准备添加个路网数据增加定位准确性
用的读取代码是github上的代码,使用openstreet数据。
1,从BBBbike划定区域下载路网数据,BBBike extracts OpenStreetMap (OSM, Garmin, Shapefile etc.)
下载pbf数据后,使用osm2pgsql 导入数据,由于读取代码需要用到建立时的临时表因此需要在添加--slim参数
osm2pgsql.exe -d NewYork -U d123456 -H 192.168.2.22 --password --slim -P 5433 -C 12000 -S default.style "osm.pbf"
-d 数据库名 -U用户名 -H 数据库IP -P 数据库端口 --password 代表输入密码,在后面填写密码后一直出错,索性留空。
然后导入成功后,使用了planet_osm_ways查询道路
select * from planet_osm_ways where tags? 'highway';
找到路后,获取道路里面的点
select * from planet_osm_nodes where id =
源代码通过加上
union select * from planet_osm_nodes where id =
实现大批量查询道路点
目前问题,导入后生成的表并没有geom这一列,需要自己手动添加,导致不能自定义查询范围。