在快节奏的都市生活中,路径规划已成为日常出行的核心环节。用户无论前往何地,都期望能够迅速获取所有可能的路线,并根据预估的出行时间,轻松挑选出最适合自己的出行方案。在现代生活中,路径规划的需求无处不在,从导航应用中的个性化路线推荐,到外卖服务中的高效配送规划,路径规划服务正以其智能化和个性化,大大提升了用户的生活品质。
HarmonyOS SDK地图服务(Map Kit)的路径规划功能,提供两点之间步行、骑行、驾车的路径规划能力,其中驾车路径规划支持添加途径点,还提供多点之间步行、骑行、驾车的批量算路功能。不仅如此,地图服务还可以根据不同的交通工具及实时路况信息,给出不同路径规划方案及预估到达时间。
功能介绍
1.驾车路径规划
根据起终点坐标检索符合条件的驾车路径规划方案。支持以下功能:
支持一次请求返回多条路线,最多支持3条路线。
最多支持5个途经点。
支持未来出行规划。
支持根据实时路况进行合理路线规划。
支持多种路线偏好选择,如时间最短、避免经过收费的公路、避开高速公路、距离优先等。
2.步行路径规划
根据起终点坐标检索符合条件的步行路径规划方案。支持以下功能:
支持150km以内的步行路径规划能力。
融入出行策略(时间最短、避免轮渡)。
3.骑行路径规划
根据起终点坐标检索符合条件的骑行路径规划方案。支持以下功能:
支持500km以内的骑行路径规划能力。
融入出行策略(时间最短、避免轮渡)。
开发步骤
1.导入相关模块
import { navi } from '@kit.MapKit';
2.路径规划开发
1)驾车路径规划
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)步行路径规划
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)骑行路径规划
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.");
}
了解更多详情>>
访问地图服务联盟官网
获取路径规划能力开发指导文档