mapcontext.showroute(object object)
基础库 或更高版本; 且 支付宝客户端 10.1.32 或更高版本; 若版本较低,建议采取 兼容处理 。
支小宝客户端 支持
安诊儿客户端 支持
小程序开发者工具: 支持。
主体: 企业支付宝小程序 、 个人支付宝小程序
规划路径并在地图上展示。
object object
查看示例
属性 | 类型 | 默认值 | 必填 | 兼容性 | 描述 | ||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
searchtype | string | walk | 否 | 基础库: 1.13.0 |
搜索类型 |
||||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||||||
startlat | number | - | 是 | - | 起点纬度 |
||||||||||||||||||||||||||||||||||
startlng | number | - | 是 | - | 起点经度 |
||||||||||||||||||||||||||||||||||
endlat | number | - | 是 | - | 终点纬度 |
||||||||||||||||||||||||||||||||||
endlng | number | - | 是 | - | 终点经度 |
||||||||||||||||||||||||||||||||||
throughpoints | array | - | 否 | 基础库: 1.13.0 |
途径点,仅驾车规划有效,即 searchtype=“drive” 时有效 |
||||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||||||
routecolor | string | - | 否 | - | 路线颜色,例:#000000。该值仅在 2d 地图中生效 |
||||||||||||||||||||||||||||||||||
iconpath | string | - | 否 | - | 路线纹理。基础库 1.11.0 及以下版本中,3d 地图中该参数优先级高于 routecolor,即纹理会覆盖颜色值。基础库 1.13.0 及以上版本建议不设置该参数,因为在 3d 地图下提供了默认的纹理图案,图片尺寸建议为 2 的整数幂,例如 64*64 |
||||||||||||||||||||||||||||||||||
iconwidth | number | - | 否 | - | 纹理宽度。基础库 1.11.0 及以下版本中,该参数才生效。基础库 1.13.0 及以上版本建议不设置该参数,因为在 3d 地图下提供了默认的纹理宽度 |
||||||||||||||||||||||||||||||||||
routewidth | number | - | 否 | - | 路线宽度。在不设置纹理时有效。基础库 1.13.0 及以上版本建议不再设置,在 2d 地图下提供了默认值,3d 地图下不需要设置 |
||||||||||||||||||||||||||||||||||
zindex | number | - | 否 | 基础库: 1.11.0 |
路径层级 |
||||||||||||||||||||||||||||||||||
mode | number | - | 否 | - | 路径规划偏好设置。仅在驾车模式和公交模式支持 |
||||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||||||
city | string | - | 否 | - | 城市名称。公交模式下必填 |
||||||||||||||||||||||||||||||||||
destinationcity | string | - | 否 | - | 城市名称。公交跨城模式下必填 |
||||||||||||||||||||||||||||||||||
success | function | - | 否 | - | 调用成功的回调函数 |
||||||||||||||||||||||||||||||||||
fail | function | - | 否 | - | 调用失败的回调函数 |
||||||||||||||||||||||||||||||||||
complete | function | - | 否 | - | 调用结束的回调函数(调用成功、失败都会执行) |
success 回调函数
参数
object res
查看示例
属性 | 类型 | 描述 |
---|---|---|
distance | number | 距离,单位为米 |
duration | number | 时间,单位为秒 |
fail 回调的参数为 object,error
属性为错误码,errormessage
属性为错误消息。
错误码 | 错误消息 | 凯发app官方网站的解决方案 |
---|---|---|
1103 | 路线规划失败 |
自驾起点终点经纬度差距过大,请缩小经纬度差距 |
1201 | 路线规划失败 |
公交起点终点经纬度差距过大,请缩小经纬度差距 |
3000 | 路线规划失败 |
步行起点终点经纬度差距过大,请缩小经纬度差距 |
60001 | 路线规划失败 |
骑行起点终点经纬度差距过大,请缩小经纬度差距 |
<view>
<map id="map" style="width:100%; height:500px"/>
<button ontap="showroute">规划路径button>
view>
page({
data: {
mapctx: null
},
onready() {
this.data.mapctx = my.createmapcontext('map');
},
showroute() {
this.data.mapctx.showroute({
searchtype: 'walk', // 路径类型:10.1.50 新增,有"walk", "bus", "drive", "ride", 默认值为 "walk"
startlat: 30.257839, // 起点纬度
startlng: 120.062726, // 起点经度
endlat: 30.256718, // 终点纬度
endlng: 120.059985, // 终点经度
success:(res) => {
console.log(res, `总路程 ${res.distance} 米, 预计耗时 ${res.duration} 秒`);
},
fail:(error) => {
console.log(error);
},
});
}
});
this.data.mapctx.showroute({
searchtype: 'bus',
startlat: 30.257839, // 起点纬度
startlng: 120.062726, // 起点经度
endlat: 30.256718, // 终点纬度
endlng: 120.089985, // 终点经度
city: "hangzhou",
success: (res) => {
console.log(res, `总路程 ${res.distance} 米, 预计耗时 ${res.duration} 秒`);
},
fail: (error) => {
console.log(error);
},
});
{
"distance": 328,
"duration": 262,
"success": true
}
-
tip目前步行最多支持 100 公里的规划路线,100 公里以上可能存在路线规划失败的情况。