diff --git a/source/RobotAPI/gui-plugins/KinematicUnitPlugin/KinematicUnitGuiPlugin.cpp b/source/RobotAPI/gui-plugins/KinematicUnitPlugin/KinematicUnitGuiPlugin.cpp index b2de2b87fea77a3a109ad5458aa235e0b42e643a..8fee75d4af4069c211149ed54906f03bd8a86139 100644 --- a/source/RobotAPI/gui-plugins/KinematicUnitPlugin/KinematicUnitGuiPlugin.cpp +++ b/source/RobotAPI/gui-plugins/KinematicUnitPlugin/KinematicUnitGuiPlugin.cpp @@ -65,11 +65,11 @@ #include <ArmarXCore/observers/filters/MedianFilter.h> // System -#include <stdio.h> +#include <cstdio> #include <memory> #include <string> -#include <string.h> -#include <stdlib.h> +#include <string> +#include <cstdlib> #include <iostream> #include <cmath> @@ -253,15 +253,6 @@ void KinematicUnitWidgetController::onConnectComponent() initGUIComboBox(robotNodeSet); // init the pull down menu (QT: ComboBox) initGUIJointListTable(robotNodeSet); - // Init control mode map - // try - // { - // reportedJointControlModes = kinematicUnitInterfacePrx->getControlModes(); - // } - // catch (...) - // { - // } - const auto initialDebugInfo = kinematicUnitInterfacePrx->getDebugInfo(); initializeUi(initialDebugInfo); @@ -519,46 +510,8 @@ void KinematicUnitWidgetController::initializeUi(const DebugInfo& debugInfo) ui.widgetSliderFactor->setVisible(false); fetchData(); - - // setControlModePosition(); // FIXME purge this! - // updateControlModesTable(); - } -// void KinematicUnitWidgetController::kinematicUnitZeroPosition() -// { -// if (!robotNodeSet) -// { -// return; -// } - -// std::unique_lock lock(mutexNodeSet); -// std::vector< RobotNodePtr > rn = robotNodeSet->getAllRobotNodes(); -// NameValueMap jointAngles; -// NameControlModeMap jointModes; - -// for (unsigned int i = 0; i < rn.size(); i++) -// { -// jointModes[rn[i]->getName()] = ePositionControl; -// jointAngles[rn[i]->getName()] = 0.0f; -// } - -// try -// { -// kinematicUnitInterfacePrx->switchControlMode(jointModes); -// kinematicUnitInterfacePrx->setJointAngles(jointAngles); -// } -// catch (...) -// { -// } - -// // Set slider to 0 if position control mode is used. -// if (selectedControlMode == ePositionControl) -// { -// ui.horizontalSliderKinematicUnitPos->setSliderPosition(SLIDER_ZERO_POSITION); -// } -// } - void KinematicUnitWidgetController::kinematicUnitZeroVelocity() { @@ -593,38 +546,7 @@ void KinematicUnitWidgetController::kinematicUnitZeroVelocity() ui.horizontalSliderKinematicUnitPos->setSliderPosition(SLIDER_ZERO_POSITION); } } -// void KinematicUnitWidgetController::kinematicUnitZeroTorque() -// { -// if (!robotNodeSet) -// { -// return; -// } - -// std::unique_lock lock(mutexNodeSet); -// std::vector< RobotNodePtr > rn = robotNodeSet->getAllRobotNodes(); -// NameValueMap tor; -// NameControlModeMap jointModes; - -// for (unsigned int i = 0; i < rn.size(); i++) -// { -// jointModes[rn[i]->getName()] = eTorqueControl; -// tor[rn[i]->getName()] = 0.0f; -// } - -// try -// { -// kinematicUnitInterfacePrx->switchControlMode(jointModes); -// kinematicUnitInterfacePrx->setJointTorques(tor); -// } -// catch (...) -// { -// } - -// if (selectedControlMode == eVelocityControl) -// { -// ui.horizontalSliderKinematicUnitPos->setSliderPosition(SLIDER_ZERO_POSITION); -// } -// } + void KinematicUnitWidgetController::resetSlider() { @@ -1027,11 +949,6 @@ void KinematicUnitWidgetController::selectJoint(int i) currentNode = robotNodeSet->getAllRobotNodes()[i]; ARMARX_IMPORTANT << "Selected joint is `" << currentNode->getName() << "`."; - /* - //ui.lcdNumberKinematicUnitJointValue->display(pos*180.0f/(float)M_PI); - ui.lcdNumberKinematicUnitJointValue->display(posT); - */ - const auto controlModes = kinematicUnitInterfacePrx->getControlModes(); if(controlModes.count(currentNode->getName()) == 0) { @@ -1039,11 +956,9 @@ void KinematicUnitWidgetController::selectJoint(int i) return; } - // const auto selectedControlMode = getSelectedControlMode(); const auto controlMode = controlModes.at(currentNode->getName()); setControlModeRadioButtonGroup(controlMode); - if (controlMode == ePositionControl) { setControlModePosition(); @@ -1078,13 +993,8 @@ void KinematicUnitWidgetController::sliderValueChanged(int pos) return; } - // float ticks = static_cast<float>(ui.horizontalSliderKinematicUnitPos->maximum() - ui.horizontalSliderKinematicUnitPos->minimum()+1); - float value = static_cast<float>(ui.horizontalSliderKinematicUnitPos->value()); - // float perc = (value - static_cast<float>(ui.horizontalSliderKinematicUnitPos->minimum())) / ticks; + const float value = static_cast<float>(ui.horizontalSliderKinematicUnitPos->value()); - // NameControlModeMap::const_iterator it; - // it = reportedJointControlModes.find(currentNode->getName()); - // const ControlMode currentControlMode = it->second; const ControlMode currentControlMode = getSelectedControlMode(); const bool isDeg = ui.checkBoxUseDegree->isChecked(); @@ -1094,11 +1004,6 @@ void KinematicUnitWidgetController::sliderValueChanged(int pos) { const auto factor = isRot && ! isDeg ? SLIDER_POS_RAD_MULTIPLIER : SLIDER_POS_DEG_MULTIPLIER; float conversionFactor = isRot && isDeg ? 180.0 / M_PI : 1.0f; - // TODO: Joint limits are not respected - //float lo = currentNode->getJointLimitLo(); - //float hi = currentNode->getJointLimitHi(); - //float result = lo + (hi-lo)*perc; - //jointAngles[currentNode->getName()] = (perc - 0.5) * 2 * M_PI; NameValueMap jointAngles; @@ -1113,7 +1018,6 @@ void KinematicUnitWidgetController::sliderValueChanged(int pos) catch (...) { } - // updateModel(); } } else if (currentControlMode == eVelocityControl) @@ -1132,7 +1036,6 @@ void KinematicUnitWidgetController::sliderValueChanged(int pos) catch (...) { } - // updateModel(); } } else if (currentControlMode == eTorqueControl) @@ -1151,7 +1054,6 @@ void KinematicUnitWidgetController::sliderValueChanged(int pos) catch (...) { } - // updateModel(); } } else @@ -1341,14 +1243,6 @@ void KinematicUnitWidgetController::updateJointAnglesTable(const NameValueMap& r ui.tableJointList->model()->setData(index, node->getJointLimitHigh() * conversionFactor, eJointHiRole); ui.tableJointList->model()->setData(index, node->getJointLimitLow() * conversionFactor, eJointLoRole); } - - //update only if values changed - // if ((fabs(dirty_squaresum_old[0] - dirty_squaresum)) > 0.0000005) - // { - // updateModel(); - // dirty_squaresum_old[0] = dirty_squaresum; - // // ARMARX_INFO << "update model" << flush; - // } } void KinematicUnitWidgetController::updateJointVelocitiesTable(const NameValueMap& reportedJointVelocities) @@ -1478,93 +1372,6 @@ void KinematicUnitWidgetController::updateMotorTemperaturesTable(const NameValue } -// void KinematicUnitWidgetController::reportJointAngles(const NameValueMap& jointAngles, Ice::Long timestamp, bool aValueChanged, const Ice::Current& c) -// { -// reportedJointAngles = kinematicUnitInterfacePrx->getJointAngles(); -// emit jointAnglesReported(); - -// } - -// void KinematicUnitWidgetController::reportJointVelocities(const NameValueMap& jointVelocities, Ice::Long timestamp, bool aValueChanged, const Ice::Current& c) -// { -// reportedJointVelocities = kinematicUnitInterfacePrx->getJointVelocities(); -// emit jointVelocitiesReported(); - -// } - -// void KinematicUnitWidgetController::reportJointTorques(const NameValueMap& jointTorques, Ice::Long timestamp, bool aValueChanged, const Ice::Current& c) -// { -// reportedJointTorques = kinematicUnitInterfacePrx->getJointTorques(); -// emit jointTorquesReported(); -// } - -// void KinematicUnitWidgetController::reportJointAccelerations(const NameValueMap& jointAccelerations, Ice::Long timestamp, bool aValueChanged, const Ice::Current& c) -// { - -// } - -// void KinematicUnitWidgetController::reportControlModeChanged(const NameControlModeMap& jointModes, Ice::Long timestamp, bool aValueChanged, const Ice::Current& c) -// { -// reportedJointControlModes = kinematicUnitInterfacePrx->getControlModes(); -// emit jointControlModesReported(); -// } - -// void KinematicUnitWidgetController::reportJointCurrents(const NameValueMap& jointCurrents, Ice::Long timestamp, bool aValueChanged, const Ice::Current& c) -// { -// std::unique_lock lock(mutexNodeSet); - -// const auto jointCurrents = kinematicUnitInterfacePrx->getJointCurrent(); - -// if (aValueChanged && jointCurrents.size() > 0) -// { -// jointCurrentHistory.push_back(std::pair<Ice::Long, NameValueMap>(timestamp, jointCurrents)); -// } - -// while (jointCurrentHistory.size() > 1 && jointCurrentHistory.back().first - jointCurrentHistory.front().first > historyTime) -// { -// jointCurrentHistory.pop_front(); -// } - - -// if (jointCurrentHistory.size() > 0) -// { -// if (skipper.checkFrequency(c)) -// { -// emit jointCurrentsReported(); -// } -// } -// } - -// void KinematicUnitWidgetController::reportJointMotorTemperatures(const NameValueMap& jointMotorTemperatures, Ice::Long timestamp, bool aValueChanged, const Ice::Current& c) -// { -// if (!aValueChanged && reportedJointStatuses.size() > 0) -// { -// return; -// } - -// std::unique_lock lock(mutexNodeSet); -// mergeMaps(this->reportedJointTemperatures, jointMotorTemperatures); -// if (skipper.checkFrequency(c)) -// { -// emit jointMotorTemperaturesReported(); -// } -// } - -// void KinematicUnitWidgetController::reportJointStatuses(const NameStatusMap& jointStatuses, Ice::Long timestamp, bool aValueChanged, const Ice::Current& c) -// { -// if (!aValueChanged && reportedJointStatuses.size() > 0) -// { -// return; -// } - -// std::unique_lock lock(mutexNodeSet); -// mergeMaps(reportedJointStatuses, jointStatuses); -// if (skipper.checkFrequency(c)) -// { -// emit jointStatusesReported(); -// } -// } - void KinematicUnitWidgetController::updateModel(const NameValueMap& reportedJointAngles) { @@ -1746,24 +1553,6 @@ void RangeValueDelegate::paint(QPainter* painter, const QStyleOptionViewItem& op QApplication::style()->drawControl(QStyle::CE_ProgressBar, &progressBarOption, painter); - // QProgressBar renderer; - // float progressPercentage = (jointValue*180.0f/M_PI-loDeg)/(hiDeg - loDeg); - // ARMARX_INFO_S << VAROUT(progressPercentage); - // // Customize style using style-sheet.. - // QColor color((int)(255*progressPercentage), ((int)(255*(1-progressPercentage))), 0); - // QString style = renderer.styleSheet(); - // style += "QProgressBar::chunk { background-color: " + color.name() + "}"; - // ARMARX_INFO_S << VAROUT(style); - // renderer.resize(option.rect.size()); - // renderer.setMinimum(loDeg); - // renderer.setMaximum(hiDeg); - // renderer.setValue(jointValue*180.0f); - - // renderer.setStyleSheet(style); - // painter->save(); - // painter->translate(option.rect.topLeft()); - // renderer.render(painter); - // painter->restore(); } else {