关于百度地图api函数的一个问题
最近几天没事看了下百度地图的api,在覆盖物->标注沿着现运动中见到如下一个函数,纠结了好久没有看懂怎么运行的特此向大神求助啊!给个详细点的解释。先谢谢了
driving.setSearchCompleteCallback(function(){--------------------编程问答-------------------- 我没有用过这个东西,不过地图相关的知识我知道一点。你贴得程序,看字面的意思,它应该是在搜索一条路线结束的时候被调用,首先将搜索结果保存起来,然后创建一个标记点,然后从第6个坐标点开始、每隔100毫秒将标记点移动到下一个坐标点,直到达到最后一个点。
var pts = driving.getResults().getPlan(0).getRoute(0).getPath(); //通过驾车实例,获得一系列点的数组
var paths = pts.length; //获得有几个点
var carMk = new BMap.Marker(pts[0],{icon:myIcon});
map.addOverlay(carMk);
i=0;
function resetMkPoint(i){
carMk.setPosition(pts[i]);
if(i < paths){
setTimeout(function(){
i++;
resetMkPoint(i);
},100);
}
}
setTimeout(function(){
resetMkPoint(5);
},100)
});
}
这里没有使用什么for循环,而是使用调用timer(类似于递归,但是不是递归)来完成定时移动到下一个点。
那个代码
i=0;我认为是没有用的代码。 --------------------编程问答--------------------
百度的api 注释很详细吧。。。
--------------------编程问答--------------------
代码我是在百度提供的实例里复制的
不过 您所说的不是递归类似递归 我还是不能理解 到底是怎么运行的
主要就是resetMkPoint(i)这个函数 --------------------编程问答--------------------
在这个函数中真的没理解了
网址如下http://dev.baidu.com/wiki/static/map/API/examples/?v=1.3&3_9#3&9
补充:.NET技术 , ASP.NET