如何以编程方式获取美国州际出口的纬度和经度?

时间:2009-12-24 23:00:33

标签: geolocation

有没有办法使用开源地图/ API(Google Map API,Microsoft Live Map API)?

或者有没有办法从地图文件中遍历道路和交叉路口? (如果我购买商业地图数据)

感谢。

编辑:开源或API

1 个答案:

答案 0 :(得分:2)

基于openstreetmap的可能解决方案,具体取决于美国OSM数据的质量。

如此处所述"Exit ramps/slip roads should be tagged as highway=motorway_link or highway=primary_link"如果您导入美国的地图数据(使用 osm2pgsql ),则可以选择所有高速公路链接。

E.g。 (根据我自己的数据选择,即非常在美国境外)

openmapdb=# select osm_id, name, ref from planet_osm_roads where highway='motorway_link';
  osm_id  | name | ref 
----------+------+-----
 23683997 |      | 
 26436348 |      | 
 [..]

2368399726436348是OSM ID - 如果您点击链接,您会看到它们确实是进入/退出斜坡。

一旦确定了方法,就可以访问纬度和经度:

openmapdb=# select astext(st_transform(way, 4326)) from planet_osm_roads where osm_id = '23683997';                                                                                                                                             
    LINESTRING(24.8757131412186 44.8730730514894,[..]
(1 row)