【HarmonyOS-多种路径规划方案,满足应用个性化导航需求】此文章归类为:HarmonyOS。
在快节奏的都市生活中,路径规划已成为日常出行的核心环节。用户无论前往何地,都期望能够迅速获取所有可能的路线,并根据预估的出行时间,轻松挑选出最适合自己的出行方案。在现代生活中,路径规划的需求无处不在,从导航应用中的个性化路线推荐,到外卖服务中的高效配送规划,路径规划服务正以其智能化和个性化,大大提升了用户的生活品质。
HarmonyOS SDK地图服务(Map Kit)的路径规划功能,提供两点之间步行、骑行、驾车的路径规划能力,其中驾车路径规划支持添加途径点,还提供多点之间步行、骑行、驾车的批量算路功能。不仅如此,地图服务还可以根据不同的交通工具及实时路况信息,给出不同路径规划方案及预估到达时间。


功能介绍
1.驾车路径规划
根据起终点坐标检索符合条件的驾车路径规划方案。支持以下功能:
支持一次请求返回多条路线,最多支持3条路线。
最多支持5个途经点。
支持未来出行规划。
支持根据实时路况进行合理路线规划。
支持多种路线偏好选择,如时间最短、避免经过收费的公路、避开高速公路、距离优先等。
2.步行路径规划
根据起终点坐标检索符合条件的步行路径规划方案。支持以下功能:
支持150km以内的步行路径规划能力。
融入出行策略(时间最短、避免轮渡)。
3.骑行路径规划
根据起终点坐标检索符合条件的骑行路径规划方案。支持以下功能:
支持500km以内的骑行路径规划能力。
融入出行策略(时间最短、避免轮渡)。
开发步骤
1.导入相关模块
1 | import { navi } from '@kit.MapKit' ;
|
2.路径规划开发
1)驾车路径规划
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | async testDrivingRoutes(){
let params: navi.DrivingRouteParams = {
/ / 起点的经纬度
origins: [{
"latitude" : 31.982129213545843 ,
"longitude" : 120.27745557768591
}],
/ / 终点的经纬度
destination: {
"latitude" : 31.982129213545843 ,
"longitude" : 120.27745557768591
},
/ / 路径的途经点
waypoints: [{ "latitude" : 31.967236140819114 , "longitude" : 120.27142088866847 },
{ "latitude" : 31.972868002238872 , "longitude" : 120.2943211817165 },
{ "latitude" : 31.98469327973332 , "longitude" : 120.29101107384068 }],
language: "zh_CN"
};
const result = await navi.getDrivingRoutes(params);
console.info( "Succeeded in getting driving routes." );
}
|
2)步行路径规划
1 2 3 4 5 6 7 8 9 10 11 | async testWalkingRoutes(){
let params: navi.RouteParams = {
/ / 起点的经纬度
origins: [{ "latitude" : 39.992281 , "longitude" : 116.31088 }, { "latitude" : 39.996 , "longitude" : 116.311 }],
/ / 终点的经纬度
destination: { "latitude" : 39.94 , "longitude" : 116.311 },
language: "zh_CN"
};
const result = await navi.getWalkingRoutes(params);
console.info( "Succeeded in getting walking routes." );
}
|
3)骑行路径规划
1 2 3 4 5 6 7 8 9 10 11 | async testCyclingRoutes(){
let params: navi.RouteParams = {
/ / 起点的经纬度
origins: [{ latitude: 54.216608 , longitude: - 4.66529 }],
/ / 终点的经纬度
destination: { latitude: 54.2166 , longitude: - 4.66552 },
language: "zh_CN"
};
const result = await navi.getCyclingRoutes(params);
console.info( "Succeeded in getting cycling routes." );
}
|
了解更多详情>>
访问地图服务联盟官网
获取路径规划能力开发指导文档
更多【HarmonyOS-多种路径规划方案,满足应用个性化导航需求】相关视频教程:www.yxfzedu.com