【问题标题】:HERE Maps Javascript API alternative routesHERE Maps Javascript API 替代路线
【发布时间】:2014-05-10 13:36:09
【问题描述】:

【问题讨论】:

    标签: javascript json maps here-api


    【解决方案1】:

    nokia.maps.routing.Manager(基于 7.2 路由)不支持替代参数作为参数。要将此参数传递给路由,您需要使用 JSONP 调用后端路由服务器:

    startRouting = function()
    {
        var routeUrl = ["http://route.nlp.nokia.com/routing/7.2/calculateroute.json?",
                      "app_id=" + app_id + "&",
                      "app_code=" + app_code + "&",
                      "waypoint0=" + startLat + ","+ startLng + "&",
                      "waypoint1="+ destLat + "," + destLng + "&", 
                      "instructionformat=text" + "&",
                      "jsonAttributes=33" + "&",
                      "mode=fastest;car;traffic:disabled&",
                      "routeattributes=sh",
                      "&alternatives=2",
                      "&jsoncallback=routingcallback"].join("");
    
        script = document.createElement("script");
        script.src = routeUrl;
        document.body.appendChild(script);
    }
    
    var strokeColor = ["#7a24db", "#85db24","#8f0404", "#fdf700"];
    
    routingcallback = function(data)
    {
        var routes = data.response.route;
        for(var i = 0; i < routes.length; i++)
        {
            var coords = routes[i].shape;
    
            var shape = nokia.maps.geo.Shape.fromLatLngArray(coords, false);
    
            var curColor = strokeColor[i]; 
            if(routes.length == 1)
                curColor = strokeColor[3];
    
            var line = new nokia.maps.map.Polyline(shape, { pen: { strokeColor: curColor, lineWidth: 4 } });
    
            display.objects.add(line);
            display.zoomTo(line.getBoundingBox(), false, "default");
        }
    }
    

    【讨论】:

      猜你喜欢
      • 2013-01-09
      • 1970-01-01
      • 1970-01-01
      • 2020-07-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多