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

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

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

了解更多详情>>

访问地图服务联盟官网

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

相关推荐
马剑威(威哥爱编程)4 小时前
【共创稿事节】HarmonyOS 7 Agent 开发实战 11:并发多会话隔离
华为·harmonyos
行者-全栈开发8 小时前
【共创稿事节】HarmonyOS 7 空间音频实战:用 AudioSpatializationManager 构建“听得见方位“的声场
harmonyos·arkts·鸿蒙·空间音频·api 26·audio kit
马剑威(威哥爱编程)8 小时前
【共创稿事节】HarmonyOS 7 Agent 开发实战 03:Tool Calling 让 AI 查实时订单与库存
华为·harmonyos
倔强的石头10611 小时前
把 Typst 搬上开源鸿蒙 PC:一次“干净”的移植记录
华为·开源·harmonyos
梦想不只是梦与想13 小时前
鸿蒙 预览数据模拟:Hamock
harmonyos·模拟数据·hamock
贾伟康16 小时前
【化学实验室|04】HarmonyOS ArkTS 场景选择器实战:让 13 个离线实验的入口、筛选和返回路径保持一致
harmonyos·arkts·canvas·arkui·化学实验
特立独行的猫a16 小时前
仓颉语言GUI开发实战:用仓颉写串口/网络二合一调试助手
网络·ui·gui·harmonyos·tauri·仓颉
hqzing1 天前
把 glibc 移植到鸿蒙 PC 上:它能用来做什么
华为·harmonyos
OH_TPC1 天前
HarmonyOS APP开发---“习惯猫“习惯打卡App,需要用到这个库
华为·harmonyos·鸿蒙
熊猫钓鱼>_>1 天前
开源鸿蒙平台 KMP 三方库 kotlin-csv 适配全流程:从编码假设到沙箱真机互通验证
开发语言·人工智能·华为·kotlin·harmonyos·鸿蒙