基于Unity的移动端点云显示及路径规划

使用Unity开发的显示点云及通过点云地图生成可通行区域并使用A*算法进行路径规划移动端应用程序。

项目地址https://github.com/ZhouZijie-BIT/Unity-PointCloud-Navigation

移动端应用程序界面

1. 点云显示

1.1 点云格式

点云显示使用了pcx插件,可以在编辑器阶段导入ply格式的点云地图,pcx插件即可在导入文件时将ply格式转化成为Unity中可以显示的相应格式。

1.2 手势操作

在点云显示场景支持4种基本的手势操作:平移缩放单轴旋转多轴旋转。通过该场景中的按钮可以控制4种基本手势操作输入。

2. 路径规划

2.1 栅格地图系统

地图系统采用了Catlike Coding教程中的六边形地图系统设计,并作了一定改变。

2.2 可通行区域提取

通过将点云向栅格地图投影,对每个格子投影得到的点云数量进行统计,超过一定阈值则认为该栅格是不可通行的。
在这里插入图片描述

2.3 路径规划与路径提取

使用A*算法进行路径规划。在搜索得到了通路之后,根据梯度双线性插值的方法提取路径点,最终可视化输出。

在这里插入图片描述

  • 8
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
要在地图上绘制行动轨迹,你需要使用一个合适的地图API,比如谷歌地图API或百度地图API。这些API提供了一些绘制图形的工具,可以帮助你在地图上绘制线轨迹。 下面是一个使用百度地图API绘制行动轨迹的示例: 1. 首先,引入百度地图API和相关的绘制工具库: ``` <script type="text/javascript" src="http://api.map.baidu.com/api?v=2.0&ak=您的密钥"></script> <script type="text/javascript" src="http://api.map.baidu.com/library/DrawingManager/1.4/src/DrawingManager_min.js"></script> <link rel="stylesheet" href="http://api.map.baidu.com/library/DrawingManager/1.4/src/DrawingManager_min.css"> ``` 2. 创建一个地图实例: ``` var map = new BMap.Map("map-container"); map.centerAndZoom(new BMap.Point(116.404, 39.915), 15); ``` 3. 创建一个绘制管理器实例: ``` var drawingManager = new BMapLib.DrawingManager(map, { isOpen: false, // 是否开启绘制模式 enableDrawingTool: true, // 是否显示工具栏 drawingToolOptions: { anchor: BMAP_ANCHOR_TOP_RIGHT, // 工具栏位置 offset: new BMap.Size(5, 5), // 工具栏偏移量 drawingModes: [BMAP_DRAWING_POLYLINE] // 允许绘制的图形类型 }, polylineOptions: { strokeColor: "#0000ff", // 线颜色 strokeWeight: 5, // 线宽度 strokeOpacity: 0.8 // 线透明度 } }); ``` 4. 开始绘制行动轨迹: ``` drawingManager.setDrawingMode(BMAP_DRAWING_POLYLINE); drawingManager.open(); ``` 5. 保存绘制结果: ``` drawingManager.addEventListener("overlaycomplete", function(e){ var polyline = e.overlay; var path = polyline.getPath(); // 这里可以将path保存到数据库或者其他地方进行存储 }); ``` 以上就是使用百度地图API绘制行动轨迹的基本流程。你可以根据自己的需求进行调整和优化。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值