Browse Source

Fix gimbal yaw visual problems

QGC4.4
DonLakeFlyer 6 years ago
parent
commit
49a9c91f3f
  1. 2
      src/MissionManager/CameraSection.cc
  2. 16
      src/MissionManager/MissionController.cc

2
src/MissionManager/CameraSection.cc

@ -543,9 +543,7 @@ double CameraSection::specifiedGimbalPitch(void) const @@ -543,9 +543,7 @@ double CameraSection::specifiedGimbalPitch(void) const
void CameraSection::_updateSpecifiedGimbalYaw(void)
{
if (_specifyGimbal) {
emit specifiedGimbalYawChanged(specifiedGimbalYaw());
}
}
void CameraSection::_updateSpecifiedGimbalPitch(void)

16
src/MissionManager/MissionController.cc

@ -1419,7 +1419,21 @@ void MissionController::_recalcMissionFlightStatus() @@ -1419,7 +1419,21 @@ void MissionController::_recalcMissionFlightStatus()
_missionFlightStatus.vehicleSpeed = newSpeed;
}
// Look for gimbal change
// ROI commands cancel out previous gimbal yaw/pitch
if (simpleItem) {
switch (simpleItem->command()) {
case MAV_CMD_NAV_ROI:
case MAV_CMD_DO_SET_ROI_LOCATION:
case MAV_CMD_DO_SET_ROI_WPNEXT_OFFSET:
_missionFlightStatus.gimbalYaw = std::numeric_limits<double>::quiet_NaN();
_missionFlightStatus.gimbalPitch = std::numeric_limits<double>::quiet_NaN();
break;
default:
break;
}
}
// Look for specific gimbal changes
double gimbalYaw = item->specifiedGimbalYaw();
if (!qIsNaN(gimbalYaw)) {
_missionFlightStatus.gimbalYaw = gimbalYaw;

Loading…
Cancel
Save