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

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

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.");
}

了解更多详情>>

访问地图服务联盟官网

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

相关推荐
贾伟康13 小时前
【时光清单|19】HarmonyOS ArkTS 回归测试实战:覆盖启动、空数据、异常输入和重复点击
软件测试·harmonyos·arkts·回归测试·hypium
坚果的博客14 小时前
Flutter OHOS 环境搭建实战:oh-3.44.9-dev 从 0 到 1 完整记录
flutter·华为·harmonyos
坚果的博客14 小时前
认识 CPF-RN:React Native 鸿蒙官方社区与四大核心仓库
react native·react.js·harmonyos
大雷神15 小时前
HarmonyOS ArkGraphics 2D可变帧率实操——同屏对比30、60和90 FPS动画
华为·harmonyos
OH_TPC15 小时前
【鸿蒙优选三方库】@react-native-ohos/react-native-fast-image:高性能图片加载与缓存组件
缓存·华为·harmonyos·鸿蒙
贾伟康17 小时前
【句匠|03】HarmonyOS ArkTS 每日打卡实战:实现连续天数、补签边界和本地日期判断
harmonyos·arkts·本地存储·每日打卡·学习应用
小雨青年17 小时前
【HarmonyOS 7 平行视界深度实战】02 从普通页面到第一个平行视界 Demo
华为·harmonyos
~远在太平洋~17 小时前
06-鸿蒙系统 uitest UI 自动化指南
ui·自动化·harmonyos
OH_TPC17 小时前
OpenHarmony平台RN三方库适配情况
华为·harmonyos·鸿蒙
坚果的博客17 小时前
从 0 到 1:用 CJMP 开发「每日早报」鸿蒙应用完整实战
华为·harmonyos