Ignition Gazebo

API Reference

7.0.0~pre1
TransformControl.hh
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2019 Open Source Robotics Foundation
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  *
16 */
17 
18 #ifndef IGNITION_GAZEBO_GUI_TRANSFORMCONTROL_HH_
19 #define IGNITION_GAZEBO_GUI_TRANSFORMCONTROL_HH_
20 
21 #include <memory>
22 
23 #include <ignition/gui/Plugin.hh>
24 
25 namespace ignition
26 {
27 namespace gazebo
28 {
29  class TransformControlPrivate;
30 
35  class TransformControl : public ignition::gui::Plugin
36  {
37  Q_OBJECT
38 
40  public: TransformControl();
41 
43  public: ~TransformControl() override;
44 
45  // Documentation inherited
46  public: void LoadConfig(const tinyxml2::XMLElement *_pluginElem) override;
47 
51  public: void LoadGrid();
52 
53  // Documentation inherited
54  protected: bool eventFilter(QObject *_obj, QEvent *_event) override;
55 
73  public slots: void OnSnapUpdate(
74  double _x, double _y, double _z,
75  double _roll, double _pitch, double _yaw,
76  double _scaleX, double _scaleY, double _scaleZ);
77 
80  public slots: void OnMode(const QString &_mode);
81 
83  public: void SnapToGrid();
84 
86  public slots: void OnSnapToGrid();
87 
91  public slots: double xSnap();
92 
96  public slots: double ySnap();
97 
101  public slots: double zSnap();
102 
106  public slots: double rollSnap();
107 
111  public slots: double pitchSnap();
112 
116  public slots: double yawSnap();
117 
121  public slots: double scaleXSnap();
122 
126  public slots: double scaleYSnap();
127 
131  public slots: double scaleZSnap();
132 
134  signals: void newSnapValues();
135 
137  signals: void activateSelect();
138 
140  signals: void activateTranslate();
141 
143  signals: void activateRotate();
144 
148  };
149 }
150 }
151 
152 #endif
void OnSnapToGrid()
Callback in Qt thread when the snap to grid button is clicked.
void newSnapValues()
Notify that new snapping values have been set.
double ySnap()
Callback in Qt thread when the snap to grid button is clicked in order to update custom snap values m...
bool eventFilter(QObject *_obj, QEvent *_event) override
double yawSnap()
Callback in Qt thread when the snap to grid button is clicked in order to update custom snap values m...
double scaleZSnap()
Callback in Qt thread when the snap to grid button is clicked in order to update custom snap values m...
double zSnap()
Callback in Qt thread when the snap to grid button is clicked in order to update custom snap values m...
void OnMode(const QString &_mode)
Callback in Qt thread when mode changes.
void OnSnapUpdate(double _x, double _y, double _z, double _roll, double _pitch, double _yaw, double _scaleX, double _scaleY, double _scaleZ)
Sends an event to update the internal snapping values for translation, rotation, and scaling...
double scaleYSnap()
Callback in Qt thread when the snap to grid button is clicked in order to update custom snap values m...
void activateRotate()
Notify that rotation has been activated.
double rollSnap()
Callback in Qt thread when the snap to grid button is clicked in order to update custom snap values m...
void activateTranslate()
Notify that translation has been activated.
~TransformControl() override
Destructor.
double pitchSnap()
Callback in Qt thread when the snap to grid button is clicked in order to update custom snap values m...
This library is part of the Ignition Robotics project.
void activateSelect()
Notify that selection has been activated.
double scaleXSnap()
Callback in Qt thread when the snap to grid button is clicked in order to update custom snap values m...
double xSnap()
Callback in Qt thread when the snap to grid button is clicked in order to update custom snap values m...
void LoadConfig(const tinyxml2::XMLElement *_pluginElem) override
Provides buttons for translation, rotation, and scale.
Definition: TransformControl.hh:35
void SnapToGrid()
Sets the custom snap values to the grid values.
void LoadGrid()
Callback to retrieve existing grid. Should only be called within the render thread. If no grid is found, the grid pointer is not updated.