From 07a9ab08f0514800161723c710171451c9f7b0e7 Mon Sep 17 00:00:00 2001 From: Michael Carpenter Date: Fri, 19 Jul 2013 06:51:16 -0400 Subject: [PATCH] Addition of Retract/Neutral/Control angles to CameraGimbal config screen --- src/ui/configuration/CameraGimbalConfig.cc | 47 ++++ src/ui/configuration/CameraGimbalConfig.h | 4 +- src/ui/configuration/CameraGimbalConfig.ui | 239 ++++++++++++++++++++- 3 files changed, 280 insertions(+), 10 deletions(-) diff --git a/src/ui/configuration/CameraGimbalConfig.cc b/src/ui/configuration/CameraGimbalConfig.cc index 9c0b0e4c9..724dd4bc1 100644 --- a/src/ui/configuration/CameraGimbalConfig.cc +++ b/src/ui/configuration/CameraGimbalConfig.cc @@ -95,7 +95,54 @@ CameraGimbalConfig::CameraGimbalConfig(QWidget *parent) : AP2ConfigWidget(parent connect(ui.shutterDurationSpinBox,SIGNAL(editingFinished()),this,SLOT(updateShutter())); connect(ui.shutterChannelComboBox,SIGNAL(currentIndexChanged(int)),this,SLOT(updateShutter())); + connect(ui.retractXSpinBox,SIGNAL(editingFinished()),this,SLOT(updateRetractAngles())); + connect(ui.retractYSpinBox,SIGNAL(editingFinished()),this,SLOT(updateRetractAngles())); + connect(ui.retractZSpinBox,SIGNAL(editingFinished()),this,SLOT(updateRetractAngles())); + connect(ui.controlXSpinBox,SIGNAL(editingFinished()),this,SLOT(updateControlAngles())); + connect(ui.controlYSpinBox,SIGNAL(editingFinished()),this,SLOT(updateControlAngles())); + connect(ui.controlZSpinBox,SIGNAL(editingFinished()),this,SLOT(updateControlAngles())); + + connect(ui.neutralXSpinBox,SIGNAL(editingFinished()),this,SLOT(updateNeutralAngles())); + connect(ui.neutralYSpinBox,SIGNAL(editingFinished()),this,SLOT(updateNeutralAngles())); + connect(ui.neutralZSpinBox,SIGNAL(editingFinished()),this,SLOT(updateNeutralAngles())); + + +} +void CameraGimbalConfig::updateRetractAngles() +{ + if (!m_uas) + { + showNullMAVErrorMessageBox(); + return; + } + m_uas->getParamManager()->setParameter(1,"MNT_RETRACT_X",ui.retractXSpinBox->value()); + m_uas->getParamManager()->setParameter(1,"MNT_RETRACT_Y",ui.retractYSpinBox->value()); + m_uas->getParamManager()->setParameter(1,"MNT_RETRACT_Z",ui.retractZSpinBox->value()); +} + +void CameraGimbalConfig::updateNeutralAngles() +{ + if (!m_uas) + { + showNullMAVErrorMessageBox(); + return; + } + m_uas->getParamManager()->setParameter(1,"MNT_NEUTRAL_X",ui.neutralXSpinBox->value()); + m_uas->getParamManager()->setParameter(1,"MNT_NEUTRAL_Y",ui.neutralYSpinBox->value()); + m_uas->getParamManager()->setParameter(1,"MNT_NEUTRAL_Z",ui.neutralZSpinBox->value()); +} + +void CameraGimbalConfig::updateControlAngles() +{ + if (!m_uas) + { + showNullMAVErrorMessageBox(); + return; + } + m_uas->getParamManager()->setParameter(1,"MNT_CONTROL_X",ui.controlXSpinBox->value()); + m_uas->getParamManager()->setParameter(1,"MNT_CONTROL_Y",ui.controlYSpinBox->value()); + m_uas->getParamManager()->setParameter(1,"MNT_CONTROL_Z",ui.controlZSpinBox->value()); } void CameraGimbalConfig::updateTilt() diff --git a/src/ui/configuration/CameraGimbalConfig.h b/src/ui/configuration/CameraGimbalConfig.h index f5d737f19..9f686243f 100644 --- a/src/ui/configuration/CameraGimbalConfig.h +++ b/src/ui/configuration/CameraGimbalConfig.h @@ -18,7 +18,9 @@ private slots: void updateRoll(); void updatePan(); void updateShutter(); - + void updateRetractAngles(); + void updateNeutralAngles(); + void updateControlAngles(); private: Ui::CameraGimbalConfig ui; QString m_shutterPrefix; diff --git a/src/ui/configuration/CameraGimbalConfig.ui b/src/ui/configuration/CameraGimbalConfig.ui index 75dec1117..1775b5945 100644 --- a/src/ui/configuration/CameraGimbalConfig.ui +++ b/src/ui/configuration/CameraGimbalConfig.ui @@ -123,7 +123,7 @@ - CheckBox + Stabilize Tilt @@ -191,7 +191,7 @@ 100 - -100 + 0 @@ -297,7 +297,7 @@ - CheckBox + Stabilize Roll @@ -471,7 +471,7 @@ - CheckBox + Stabilize Pan @@ -726,15 +726,236 @@ - 720 - 70 - 120 - 80 + 590 + 60 + 171 + 131 + + + + Retract Angles + + + + + + + + + + X + + + + + + + Y + + + + + + + Z + + + + + + + + + + + -180 + + + 180 + + + + + + + -180 + + + 180 + + + + + + + -180 + + + 180 + + + + + + + + + + + + + 590 + 210 + 171 + 131 - GroupBox + Neutral Angles + + + + + + + + + X + + + + + + + Y + + + + + + + Z + + + + + + + + + + + -180 + + + 180 + + + + + + + -180 + + + 180 + + + + + + + -180 + + + 180 + + + + + + + + + + + + + 590 + 360 + 171 + 131 + + + + Control Angles + + + + + + + + + + X + + + + + + + Y + + + + + + + Z + + + + + + + + + + + -180 + + + 180 + + + + + + + -180 + + + 180 + + + + + + + -180 + + + 180 + + + + + + + + -- 2.22.0