37 template<
class dataType>
class AffineTransformation;
45 template<
class dataType>
51 Quaternion(
const dataType in_w,
const dataType in_x,
const dataType in_y,
const dataType in_z) :
52 w(in_w), x(in_x), y(in_y), z(in_z)
81 std::array<dataType,4>
get_data()
const;
84 void set_data(
const std::array<dataType,4> &data);
97 bool is_quaternion_close(
const Quaternion &other)
const;
Class for quaternions.
Definition: Quaternion.h:47
bool operator==(const Quaternion &other) const
Equality operator.
Definition: Quaternion.cpp:77
dataType dot(const Quaternion &other) const
Dot product with another quaternion.
Definition: Quaternion.cpp:148
Quaternion(const dataType in_w, const dataType in_x, const dataType in_y, const dataType in_z)
Constructor.
Definition: Quaternion.h:51
static Quaternion get_average(const std::vector< Quaternion > &quaternions)
Average quaternions.
Definition: Quaternion.cpp:95
bool operator!=(const Quaternion &other) const
Equality operator.
Definition: Quaternion.cpp:89
Quaternion normalise() const
Normalise quaternion.
Definition: Quaternion.cpp:131
void set_data(const std::array< dataType, 4 > &data)
Set the data.
Definition: Quaternion.cpp:166
std::array< dataType, 3 > get_Euler_angles() const
Get as Euler angles.
Definition: Quaternion.cpp:175
std::array< dataType, 4 > get_data() const
Get the data.
Definition: Quaternion.cpp:160
void print() const
Print quaternion.
Definition: Quaternion.cpp:154
Quaternion inverse_sign_quaternion() const
Changes the sign of the quaternion components. This is not the same as the inverse.
Definition: Quaternion.cpp:142
Abstract data container.
Definition: GeometricalInfo.cpp:141