- Careland.DrivingRoute提供驾车导航服务。
- 下面示例展示了如何使用驾车导航接口:
-
var map = new Careland.Map("mymap",new Careland.Point(410942332,81392068),10);
map.load();
var driving = new Careland.DrivingRoute(map, {
map: map,
autoViewport: true
});
driving.search("创建大厦", "深圳机场");
- 下面示例中,我们提供了结果面板panel参数,方案描述会自动展示到此panel容器中。
-
var map = new Careland.Map("mymap",new Careland.Point(410942332,81392068),10);
map.load();
var driving = new Careland.DrivingRoute(map, {
map: map,
panel : "results",
autoViewport: true
});
driving.search("创建大厦", "深圳机场");
- 驾车导航服务也提供了丰富的数据接口,通过onSearchComplete回调函数可以得到Careland.DrivingRouteResult对象,它包含了驾车导航结果数据信息。结果会包含若干驾车方案(目前仅提供一条方案),每条方案中包含了若干驾车线路。每条驾车线路又会包含一系列的诱导点(Careland.Step),诱导点描述了具体驾车行驶方案,可通过Careland.Step.getDescription()方法获得。
-
var map = new Careland.Map("mymap",new Careland.Point(410942332,81392068),10);
map.load();
var driving = new Careland.DrivingRoute(map);
driving.setSearchCompleteCallback(function(results){
var status = driving.getStatus();
if(status.errcode == "0"){ // 判断状态是否正确
// 获取第一条方案
var plan = results.getPlan(0);
var s = [];
// 获取方案的驾车线路
for (var i = 0; i < plan.getNumRoutes (); i ++){
var route = plan.getRoute(i);
var stepnum = route.getNumSteps();
s.push((i + 1) + ". " + route.getStep(0).getDescription());
if(stepnum > 1){
// 获取每个关键步骤
for (var j = 0; j var step = route.getStep(j);
s.push(" " + step.getDescription());
}
}
}
//输出到页面
document.getElementById("resultdiv").innerHTML = s.join("
");
}
});
driving.search("创建大厦", "深圳机场");