TinyURDF 1.0.0
Loading...
Searching...
No Matches
inertia.h
Go to the documentation of this file.
1#ifndef INCLUDE_TINYURDF_CORE_INERTIA_H_
2#define INCLUDE_TINYURDF_CORE_INERTIA_H_
3
4// Copyright 2025 Wissem CHIHA
5
6#include <string>
7#include <memory>
8#include <loguru/loguru.hpp>
9#include "core/pose.h"
12
18class Inertia : public PropertyBase, public GeometryBase {
19 public:
20 Inertia();
21 Inertia(double mass, double ixx, double ixy, double ixz,
22 double iyy, double iyz, double izz);
23 bool isA(const char* name) const override;
24 bool validate() const override;
25 void clear() override;
26 std::string toString() const override;
27 const char* getTypename() const override;
28 bool empty() const override;
29 void setOrigin(double x, double y, double z) override;
30 void getOrigin(double* xyz) const override;
31 void setMass(const double m);
32 void setIxx(double ixx_);
33 void setIxy(double ixy_);
34 void setIxz(double ixz_);
35 void setIyy(double iyy_);
36 void setIyz(double iyz_);
37 void setIzz(double izz_);
38 private:
39 std::shared_ptr<Pose> origin;
40 double mass;
41 double ixx, ixy, ixz, iyy, iyz, izz;
42};
43#endif // INCLUDE_TINYURDF_CORE_INERTIA_H_
base class for all geometry entities
Definition geometry_base.h:12
Represents the inertia of an object. The inertia is defined with respect to a given origin and the co...
Definition inertia.h:18
bool isA(const char *name) const override
Definition inertia.cc:13
void setMass(const double m)
Definition inertia.cc:77
const char * getTypename() const override
Definition inertia.cc:56
void setIzz(double izz_)
Definition inertia.cc:107
bool empty() const override
Definition inertia.cc:61
void setIyz(double iyz_)
Definition inertia.cc:102
Inertia()
Definition inertia.cc:3
std::string toString() const override
Definition inertia.cc:45
bool validate() const override
Definition inertia.cc:17
void getOrigin(double *xyz) const override
Definition inertia.cc:71
void setIyy(double iyy_)
Definition inertia.cc:97
void setIxx(double ixx_)
Definition inertia.cc:82
void clear() override
Definition inertia.cc:39
void setOrigin(double x, double y, double z) override
Definition inertia.cc:66
void setIxz(double ixz_)
Definition inertia.cc:92
void setIxy(double ixy_)
Definition inertia.cc:87
Definition property_base.h:8