17 #ifndef GAZEBO_GUI_MODELSNAP_HH_
18 #define GAZEBO_GUI_MODELSNAP_HH_
22 #include <ignition/math/Quaternion.hh>
23 #include <ignition/math/Triangle3.hh>
45 class ModelSnapPrivate;
78 public:
void Snap(
const std::vector<math::Vector3> &_triangleSrc,
79 const std::vector<math::Vector3> &_triangleDest,
90 const ignition::math::Triangle3d &_triangleSrc,
91 const ignition::math::Triangle3d &_triangleDest,
105 public:
void GetSnapTransform(
106 const std::vector<math::Vector3> &_triangleSrc,
107 const std::vector<math::Vector3> &_triangleDest,
121 public:
static void SnapTransform(
122 const ignition::math::Triangle3d &_triangleSrc,
123 const ignition::math::Triangle3d &_triangleDest,
124 const ignition::math::Pose3d &_poseSrc,
125 ignition::math::Vector3d &_trans,
126 ignition::math::Quaterniond &_rot);
145 private:
void Update();
152 private: std::unique_ptr<ModelSnapPrivate> dataPtr;
Generic description of a mouse event.
Definition: MouseEvent.hh:35
Encapsulates a position and rotation in three space.
Definition: Pose.hh:42
A gui tool for snapping one model to another.
Definition: ModelSnap.hh:49
The Vector3 class represents the generic vector containing 3 elements.
Definition: Vector3.hh:44
Singleton template class.
Definition: SingletonT.hh:33
A quaternion class.
Definition: Quaternion.hh:48
#define GAZEBO_DEPRECATED(version)
Definition: system.hh:302
std::shared_ptr< Visual > VisualPtr
Definition: RenderTypes.hh:113
GAZEBO_VISIBLE void Init(google::protobuf::Message &_message, const std::string &_id="")
Initialize a message.