5 #include "GeoModelKernel/GeoDefinitions.h" 9 GeoRotation::GeoRotation(
double phi,
double theta,
double psi)
11 double sinPhi = std::sin( phi ), cosPhi = std::cos( phi );
12 double sinTheta = std::sin( theta ), cosTheta = std::cos( theta );
13 double sinPsi = std::sin( psi ), cosPsi = std::cos( psi );
15 this->operator()(0,0) = cosPsi * cosPhi - cosTheta * sinPhi * sinPsi;
16 this->operator()(0,1) = cosPsi * sinPhi + cosTheta * cosPhi * sinPsi;
17 this->operator()(0,2) = sinPsi * sinTheta;
19 this->operator()(1,0) = - sinPsi * cosPhi - cosTheta * sinPhi * cosPsi;
20 this->operator()(1,1) = - sinPsi * sinPhi + cosTheta * cosPhi * cosPsi;
21 this->operator()(1,2) = cosPsi * sinTheta;
23 this->operator()(2,0) = sinTheta * sinPhi;
24 this->operator()(2,1) = - sinTheta * cosPhi;
25 this->operator()(2,2) = cosTheta;