TinyURDF 1.0.0
Loading...
Searching...
No Matches
pose.h
Go to the documentation of this file.
1#ifndef INCLUDE_TINYURDF_CORE_POSE_H_
2#define INCLUDE_TINYURDF_CORE_POSE_H_
3
4// Copyright 2025 Wissem CHIHA
5
6#include "utility/utils.h"
8
12class Pose : public PropertyBase {
13 public:
14 Pose();
15 Pose(const Pose& rhs);
16 Pose& operator=(const Pose& rhs);
17 Pose& operator=(Pose&& rhs) noexcept;
18 bool isA(const char* name) const override;
19 std::string toString() const override;
22 void setPosition(double x, double y, double z);
23 void setRotation(double x, double y, double z, double w);
24 void setRotation(double r, double p, double y);
25 void clear() override;
26 ~Pose();
27 private:
28 Vec3 position;
29 Rot3 rotation;
30};
31#endif // INCLUDE_TINYURDF_CORE_POSE_POSE_H_
Represents a pose, consisting of position and rotation.
Definition pose.h:12
Pose & operator=(const Pose &rhs)
Definition pose.cc:15
Rot3 getRotation()
Definition pose.cc:50
bool isA(const char *name) const override
Definition pose.cc:25
~Pose()
Definition pose.cc:77
void setRotation(double x, double y, double z, double w)
Definition pose.cc:60
void setPosition(double x, double y, double z)
Definition pose.cc:55
Pose()
Definition pose.cc:3
void clear() override
Definition pose.cc:39
Pose & operator=(Pose &&rhs) noexcept
Vec3 getPosition()
Definition pose.cc:45
std::string toString() const override
Definition pose.cc:30
Definition property_base.h:8
Eigen::Matrix< double, 3, 1 > Vec3
Base struct for 3D position vectors.
Definition utils.h:17
Eigen::Quaternion< double > Rot3
Base struct for 3D rotation elements.
Definition utils.h:22