高德开发者论坛
标题:
map.routePath 室内路径规划,调用没反应?
[打印本页]
作者:
amapgQD8dmn7
时间:
2016-12-28 15:59
标题:
map.routePath 室内路径规划,调用没反应?
我想对原有的规划功能上修改一下。于是在 map 初始化后对 DOM 进行操作。
大概思路是在地图上先点击一个地点作为起始地点(或者是倒数第二次点击),记录为 routePath的起始点参数。用的是map.on('click');
同样还有一个用来记录目的地的坐标的函数。用的是 map.on('shopclick facilityclick
)
然后把原先已经生成的去那里图标 ,删除,在添加一个一样的,然后在新添加的标签元素添加 onclick 事件。
这个新添加的击事件就是用来调用 routePath。 问题是在调用 routePath 后,回调的成功函数信息会在控制栏里正确输出。
最后贴一下代码。
map.once('mapready',
function
() {
var
stopSF = {},startUG = {},place= [],stopplace = [];
map.on('click',clickSomeWhere);
function
clickSomeWhere(e) {
place.push(e.latlng.lat);
place.push(e.latlng.lng);
if
(place.length>2){
startUG.x = place[place.length - 4];
startUG.y = place[place.length - 3];
startUG.floor = map.getFloor();
}
else
{
startUG.x = place[1];
startUG.y = place[0];
startUG.floor = map.getFloor();
}
return
startUG;
}
map.on('shopclick facilityclick ',getTheMark);
function
getTheMark() {
setTimeout(
function
(){
if
(document.querySelector('span.c-d-popimg')!=
null
)
{
const
gosButton = document.querySelector('span.c-d-popimg');
gosButton.remove();
}
var
poptitle = document.querySelector('div.c-d-popdiv');
var
spanimg = document.createElement('span');
spanimg.setAttribute('class','ss');
spanimg.innerHTML = '<img title="\u53bb\u8fd9\u91cc" src="" >'
poptitle.appendChild(spanimg);
spanimg.onclick =
function
() {
function
sucessback() {
console.log('ok');
}
function
errback() {
console.log('error');
}
if
(place.length<=2){
alert('please choose a place');
}
map.routePath(startUG,stopSF,sucessback,errback,{showTip:
false
});
};
},200);
}
map.on('shopclick facilityclick',clickSomeShop);
function
clickSomeShop(e) {
const
shopx = (e[["centroid"][0]][0]);
stopplace.push(shopx);
const
shopy = (e[["centroid"][0]][1]);
stopplace.push(shopy);
stopSF.x = (stopplace[stopplace.length-2]);
stopSF.y = (stopplace[stopplace.length-1]);
stopSF.floor = map.getFloor();
return
stopSF;
}
});
作者:
amapgQD8dmn7
时间:
2016-12-28 16:48
是我自己的代码问题。起点坐标获取不正确。这个要怎么删除帖子啊
作者:
uuWindy
时间:
2017-1-13 15:10
陈楠川 发表于 2016-12-28 16:48
是我自己的代码问题。起点坐标获取不正确。这个要怎么删除帖子啊
您好,非常感谢您对高德室内地图的关注。
不用删除帖子,我直接设置您的问题为已经解决就可以了。
再次感谢。
欢迎光临 高德开发者论坛 (https://lbsbbs.amap.com/)
Powered by Discuz! X3.2