26 const std::vector<std::array<double, 3>> &positionVector);
34std::array<double, 3>
rotatePosition(
const std::array<double, 4> &q,
const std::array<double, 3> &pos);
50std::array<double, 4>
qMul(
const std::array<double, 4> &q1,
const std::array<double, 4> &q2);
58std::array<double, 4>
qMul(
const std::array<double, 4> &q,
const std::array<double, 3> &v);
66std::array<double, 4>
qMul(
const std::array<double, 3> &v,
const std::array<double, 4> &q);
73std::array<double, 4>
qConjugate(
const std::array<double, 4> &q);
88std::array<double, 4>
qMirror(
const std::array<double, 4> &q,
const int &dimensionNormalToMirror);
Array utils specifically for handling quaternions.
Definition: Quaternion.cpp:11
std::array< double, 4 > qConjugate(const std::array< double, 4 > &q)
Quaternion conjugation.
Definition: Quaternion.cpp:97
std::array< double, 3 > rotatePositionBackwards(const std::array< double, 4 > &q, const std::array< double, 3 > &pos)
Rotates a single 3D position backwards.
Definition: Quaternion.cpp:78
std::array< double, 4 > qMul(const std::array< double, 4 > &q1, const std::array< double, 4 > &q2)
Quaternion multiplication.
Definition: Quaternion.cpp:82
std::array< double, 3 > convertQuaternionTo3DVec(const std::array< double, 4 > &q)
Convert quaternion to 3d-vec.
Definition: Quaternion.cpp:99
std::vector< std::array< double, 3 > > rotateVectorOfPositions(const std::array< double, 4 > &q, const std::vector< std::array< double, 3 > > &positionVector)
Rotates a std::vector of 3D positions.
Definition: Quaternion.cpp:13
std::array< double, 3 > rotatePosition(const std::array< double, 4 > &q, const std::array< double, 3 > &pos)
Rotates a single 3D position.
Definition: Quaternion.cpp:47
std::array< double, 4 > qMirror(const std::array< double, 4 > &q, const int &dimensionNormalToMirror)
Calculate the quaternion representing the same rotation, but mirrored.
Definition: Quaternion.cpp:107