写点什么

多种路径规划方案,满足应用个性化导航需求

作者:HarmonyOS SDK
  • 2025-02-06
    贵州
  • 本文字数:1401 字

    阅读完需:约 5 分钟

在快节奏的都市生活中,路径规划已成为日常出行的核心环节。用户无论前往何地,都期望能够迅速获取所有可能的路线,并根据预估的出行时间,轻松挑选出最适合自己的出行方案。在现代生活中,路径规划的需求无处不在,从导航应用中的个性化路线推荐,到外卖服务中的高效配送规划,路径规划服务正以其智能化和个性化,大大提升了用户的生活品质。


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.");}
复制代码


了解更多详情>>


访问地图服务联盟官网


获取路径规划能力开发指导文档

用户头像

HarmonyOS SDK

关注

HarmonyOS SDK 2022-06-16 加入

HarmonyOS SDK通过将HarmonyOS系统级能力对外开放,支撑开发者高效打造更纯净、更智能、更精致、更易用的鸿蒙原生应用,和开发者共同成长。

评论

发布
暂无评论
多种路径规划方案,满足应用个性化导航需求_harmoyos_HarmonyOS SDK_InfoQ写作社区