From 337133e9fa823351effa6834a0f0402f8f6ef0e8 Mon Sep 17 00:00:00 2001 From: Alessandro Simovic Date: Mon, 6 Aug 2018 11:24:24 +0200 Subject: [PATCH] use double LAT/LONG fields instead of float params for storing ROI settings --- src/modules/mavlink/mavlink_mission.cpp | 4 ---- src/modules/navigator/mission_block.cpp | 6 ++++-- 2 files changed, 4 insertions(+), 6 deletions(-) diff --git a/src/modules/mavlink/mavlink_mission.cpp b/src/modules/mavlink/mavlink_mission.cpp index f2a1116503..fcecccc79a 100644 --- a/src/modules/mavlink/mavlink_mission.cpp +++ b/src/modules/mavlink/mavlink_mission.cpp @@ -1363,8 +1363,6 @@ MavlinkMissionManager::parse_mavlink_mission_item(const mavlink_mission_item_t * mission_item->nav_cmd = NAV_CMD_DO_SET_ROI; mission_item->params[0] = MAV_ROI_LOCATION; - mission_item->params[4] = mission_item->lat; - mission_item->params[5] = mission_item->lon; mission_item->params[6] = mavlink_mission_item->z; } else if ((int)mavlink_mission_item->param1 == MAV_ROI_NONE) { @@ -1379,8 +1377,6 @@ MavlinkMissionManager::parse_mavlink_mission_item(const mavlink_mission_item_t * case MAV_CMD_DO_SET_ROI_LOCATION: mission_item->nav_cmd = NAV_CMD_DO_SET_ROI_LOCATION; - mission_item->params[4] = mission_item->lat; - mission_item->params[5] = mission_item->lon; mission_item->params[6] = mavlink_mission_item->z; break; diff --git a/src/modules/navigator/mission_block.cpp b/src/modules/navigator/mission_block.cpp index 3e876426a5..7e6cde3b73 100644 --- a/src/modules/navigator/mission_block.cpp +++ b/src/modules/navigator/mission_block.cpp @@ -452,13 +452,15 @@ MissionBlock::issue_command(const mission_item_s &item) vcmd.param2 = item.params[1]; vcmd.param3 = item.params[2]; vcmd.param4 = item.params[3]; - vcmd.param5 = (double)item.params[4]; - vcmd.param6 = (double)item.params[5]; if (item.nav_cmd == NAV_CMD_DO_SET_ROI_LOCATION && item.altitude_is_relative) { + vcmd.param5 = item.lat; + vcmd.param6 = item.lon; vcmd.param7 = item.params[6] + _navigator->get_home_position()->alt; } else { + vcmd.param5 = item.params[4]; + vcmd.param6 = item.params[5]; vcmd.param7 = item.params[6]; }