17 #ifndef _GAZEBO_MATRIX4_HH_
18 #define _GAZEBO_MATRIX4_HH_
22 #include <ignition/math/Matrix4.hh>
56 public:
Matrix4(
const ignition::math::Matrix4d &_m)
77 public:
Matrix4(
double _v00,
double _v01,
double _v02,
double _v03,
78 double _v10,
double _v11,
double _v12,
double _v13,
79 double _v20,
double _v21,
double _v22,
double _v23,
80 double _v30,
double _v31,
double _v32,
double _v33)
103 public:
void Set(
double _v00,
double _v01,
double _v02,
double _v03,
104 double _v10,
double _v11,
double _v12,
double _v13,
105 double _v20,
double _v21,
double _v22,
double _v23,
106 double _v30,
double _v31,
double _v32,
double _v33);
112 public:
void SetTranslate(
const Vector3 &_t);
116 public:
Vector3 GetTranslation()
const;
124 public:
Vector3 GetEulerRotation(
unsigned int solution_number = 1)
const;
132 public:
void SetScale(
const Vector3 &_s);
136 public:
bool IsAffine()
const;
145 public:
Matrix4 Inverse()
const;
155 public:
Matrix4 &operator=(
const ignition::math::Matrix4d &_mat);
184 return this->m[_row];
191 return this->m[_row];
198 public:
bool operator==(
const Matrix4 &_m)
const;
202 public: ignition::math::Matrix4d Ign()
const;
211 for (
int i = 0; i < 4; i++)
213 for (
int j = 0; j < 4; j++)
215 _out << (fabs(_m.
m[i][j]) < 1e-6 ? 0 : _m.
m[i][j]) <<
" ";
230 protected:
double m[4][4];
Encapsulates a position and rotation in three space.
Definition: Pose.hh:42
The Vector3 class represents the generic vector containing 3 elements.
Definition: Vector3.hh:44
static const double GAZEBO_DEPRECATED(8.0) MAX_D
Double maximum value. This value will be similar to 1.79769e+308.
Definition: Helpers.hh:140
static const Matrix4 IDENTITY
Identity matrix.
Definition: Matrix4.hh:224
A 3x3 matrix class.
Definition: Matrix4.hh:40
double * operator[](size_t _row)
Array subscript operator.
Definition: Matrix4.hh:181
A 3x3 matrix class.
Definition: Matrix3.hh:40
A quaternion class.
Definition: Quaternion.hh:48
GAZEBO_VISIBLE void Set(common::Image &_img, const msgs::Image &_msg)
Convert a msgs::Image to a common::Image.
double m[4][4]
The 4x4 matrix.
Definition: Matrix4.hh:230
const double * operator[](size_t _row) const
Definition: Matrix4.hh:188
static const Matrix4 ZERO
Zero matrix.
Definition: Matrix4.hh:227
friend std::ostream & operator<<(std::ostream &_out, const gazebo::math::Matrix4 &_m)
Stream insertion operator.
Definition: Matrix4.hh:208