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
7#include "utility/utils.h"
8
12class Pose : public PropertyBase
13{
14 public:
15 Pose();
16 Pose(const Pose& rhs);
17 Pose& operator=(const Pose& rhs);
18 Pose& operator=(Pose&& rhs) noexcept;
19 bool isA(const char* name) const override;
20 std::string toString() const override;
23 void setPosition(double x, double y, double z);
24 void setRotation(double x, double y, double z, double w);
25 void setRotation(double r, double p, double y);
26 void clear() override;
27 ~Pose();
28
29 private:
30 Vec3 position;
31 Rot3 rotation;
32};
33#endif // INCLUDE_TINYURDF_CORE_POSE_POSE_H_
Represents a pose, consisting of position and rotation.
Definition pose.h:13
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:9
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