HomogeneousMatrixCalculatorWidgetController.h
Go to the documentation of this file.
1/*
2 * This file is part of ArmarX.
3 *
4 * ArmarX is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License version 2 as
6 * published by the Free Software Foundation.
7 *
8 * ArmarX is distributed in the hope that it will be useful, but
9 * WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15 *
16 * @package RobotAPI::gui-plugins::HomogeneousMatrixCalculatorWidgetController
17 * @author Raphael Grimm ( raphael dot grimm at kit dot edu )
18 * @date 2017
19 * @copyright http://www.gnu.org/licenses/gpl-2.0.txt
20 * GNU General Public License
21 */
22
23#pragma once
24
25#include <VirtualRobot/MathTools.h>
26
28
31
32#include <RobotAPI/gui-plugins/HomogeneousMatrixCalculator/ui_HomogeneousMatrixCalculatorWidget.h>
33
34namespace armarx
35{
36 /**
37 \page RobotAPI-GuiPlugins-HomogeneousMatrixCalculator HomogeneousMatrixCalculator
38 \brief The HomogeneousMatrixCalculator allows visualizing ...
39
40 \image html HomogeneousMatrixCalculator.png
41 The user can
42
43 API Documentation \ref HomogeneousMatrixCalculatorWidgetController
44
45 \see HomogeneousMatrixCalculatorGuiPlugin
46 */
47
48 /**
49 * \class HomogeneousMatrixCalculatorWidgetController
50 * \brief HomogeneousMatrixCalculatorWidgetController brief one line description
51 *
52 * Detailed description
53 */
55 public ArmarXComponentWidgetControllerTemplate<HomogeneousMatrixCalculatorWidgetController>
56 {
57 Q_OBJECT
58
59 public:
60 /**
61 * Controller Constructor
62 */
64
65 /**
66 * Controller destructor
67 */
69
70 /**
71 * @see ArmarXWidgetController::loadSettings()
72 */
73 void loadSettings(QSettings* settings) override;
74
75 /**
76 * @see ArmarXWidgetController::saveSettings()
77 */
78 void saveSettings(QSettings* settings) override;
79
80 /**
81 * Returns the Widget name displayed in the ArmarXGui to create an
82 * instance of this class.
83 */
84 static QString
86 {
87 return "Util.HomogeneousMatrixCalculator";
88 }
89
90 /**
91 * \see armarx::Component::onInitComponent()
92 */
93 void onInitComponent() override;
94
95 /**
96 * \see armarx::Component::onConnectComponent()
97 */
98 void onConnectComponent() override;
99
100 Eigen::Matrix4d getMatrix();
101
102 static QIcon
104 {
105 return QIcon("://icons/htmx_calc_icon.svg");
106 }
107
108 static QIcon
110 {
111 return QIcon("://icons/tools.svg");
112 }
113
114 public slots:
115 /* QT slot declarations */
116
117 signals:
118 /* QT signal declarations */
119
120 private slots:
121 void changed4f();
122
123 void changedrpy();
124
125 void recalcInv();
126 void recalcProd();
127 void recalcInvAndProd();
128
129
130 private:
131 /**
132 * Widget Form
133 */
134 Ui::HomogeneousMatrixCalculatorWidget widget;
135 };
136} // namespace armarx
#define ARMARXCOMPONENT_IMPORT_EXPORT
~HomogeneousMatrixCalculatorWidgetController() override
Controller destructor.
static QString GetWidgetName()
Returns the Widget name displayed in the ArmarXGui to create an instance of this class.
This file offers overloads of toIce() and fromIce() functions for STL container types.