OPAL (Object Oriented Parallel Accelerator Library)  2024.1
OPAL
CoordinateSystemTrafo.cpp
Go to the documentation of this file.
2 #include "Utility/Inform.h"
3 
4 extern Inform *gmsg;
5 
7  origin_m(0.0),
8  orientation_m(1.0, 0.0, 0.0, 0.0),
9  rotationMatrix_m(3,3)
10 {
11  rotationMatrix_m(0,0) = 1.0;
12  rotationMatrix_m(0,1) = 0.0;
13  rotationMatrix_m(0,2) = 0.0;
14  rotationMatrix_m(1,0) = 0.0;
15  rotationMatrix_m(1,1) = 1.0;
16  rotationMatrix_m(1,2) = 0.0;
17  rotationMatrix_m(2,0) = 0.0;
18  rotationMatrix_m(2,1) = 0.0;
19  rotationMatrix_m(2,2) = 1.0;
20 }
21 
23  origin_m(right.origin_m),
24  orientation_m(right.orientation_m),
25  rotationMatrix_m(right.rotationMatrix_m)
26 { }
27 
29  const Quaternion &orientation):
30  origin_m(origin),
31  orientation_m(orientation),
32  rotationMatrix_m(orientation_m.getRotationMatrix())
33 { }
34 
38  //rotationMatrix_m = transpose(rotationMatrix_m);
39  rotationMatrix_m = boost::numeric::ublas::trans(rotationMatrix_m);
40 }
41 
44 
45  result *= right;
46  return result;
47 }
48 
54 }
matrix_t getRotationMatrix() const
Definition: Quaternion.cpp:135
Quaternion conjugate() const
Definition: Quaternion.h:103
Vector_t rotate(const Vector_t &) const
Definition: Quaternion.cpp:122
void operator*=(const CoordinateSystemTrafo &right)
Definition: Inform.h:42
float result
Definition: test.py:2
CoordinateSystemTrafo operator*(const CoordinateSystemTrafo &right) const
Inform * gmsg
Definition: Main.cpp:70
Quaternion & normalize()
Definition: Quaternion.cpp:102