QGroundControl任务飞行模式添加高程

下图是qgc任务飞行模式的软件框架

 

 下图是qgc自带的获取高程的类和函数(仅限获取单点):

获取airmap高程数据的教程请参考: https://developers.airmap.com/docs/elevation-api

在plan页面点击Takeoff后,在地图上点击一个点,在点击左边工具栏的Waypoint按钮添加航点

在地图上添加航点后,调用了MissionController里面的insertSimpleMissionItem函数,在MissionController.cc文件里添加getElevation函数,在getgetElevation中,记录原来函数的参数,实例化一个TerrainAirMapQuery,调用它的成员函数请求坐标点的高程数据。

绑定“解析完成的信号”和“源码的插入航点函数”,信号要在TerrainQuery.h定义,并在TerrainQuery.cc里面TerrainAirMapQuery类的_parseCoordinateData函数中触发

 

接下来就是简单把起飞点的相对高度加上,在VisualMissionItem* MissionController::_insertSimpleMissionItemWorker(QGeoCoordinate coordinate, MAV_CMD command, int visualItemIndex, bool makeCurrentItem)函数里面是相加相对高度个海拔。

 调试结果如下,起飞点设置的相对高度为50m,2号点的海拔为24m,则2号点的设置高度为74m

第一次发帖,只是为了记录学习过程!

 

 

 

 

 

 

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值