利用Turistforeningen /传单路由在委内瑞拉的OpenStreetMaps上绘图

时间:2015-08-13 19:10:17

标签: javascript plugins routing leaflet openstreetmap

我开始使用插件来构建我正在构建的webapp,这个应用程序使用的是openstreetmaps,适用于委内瑞拉,但我遇到了问题,因为当我尝试在高速公路上绘制一条有桥梁的路线时,只走在它下面或附近的街道。任何人都可以帮助我吗?

路由器功能与插件在示例中的功能相同:

OSM Router
                router = function(m1, m2, cb) {
                  var proxy = 'http://www2.turistforeningen.no/routing.php?url=';
                  var route = 'http://www.yournavigation.org/api/1.0/gosmore.php&format=geojson&v=foot&fast=1&layer=mapnik';
                  var params = '&flat=' + m1.lat + '&flon=' + m1.lng + '&tlat=' + m2.lat + '&tlon=' + m2.lng;
                  $.getJSON(proxy + route + params, function(geojson, status) {
                    if (!geojson || !geojson.coordinates || geojson.coordinates.length === 0) {
                      if (typeof console.log === 'function') {
                            console.log('OSM router failed', geojson);
                      }
                      return cb(new Error());
                    }
                    return cb(null, L.GeoJSON.geometryToLayer(geojson));
                  });
                }

它有效,但正如我所说,桥梁没有。

WithGoogleMaps

WithOpenStreetsMaps

1 个答案:

答案 0 :(得分:0)

已经完成了!问题是在var route = 'http://www.yournavigation.org/api/1.0/gosmore.php&format=geojson&v=foot&fast=1&layer=mapnik';中,参数 v 是运输的类型,并且设置在上,当我尝试在桥上绘制路线时高速公路,只走了街道。

我将其改为v=motorcar并且完美无缺!我在www.yournavigation.org的文档中找到了答案,这个问题就解决了。

我还要尝试使用其他在线路由器。