Rotation class representing a 3D rotation about the X axis by the angle of rotation.
For efficiency reason, in addition to the angle, the sine and cosine of the angle are held
Definition at line 46 of file RotationX.h.
Public Types | |
typedef double | Scalar |
Public Member Functions | |
RotationX () | |
Default constructor (identity rotation) | |
RotationX (Scalar angle) | |
Construct from an angle. | |
Scalar | Angle () const |
Angle of rotation. | |
Scalar | CosAngle () const |
void | GetAngle (Scalar &angle) const |
Get the angle. | |
void | GetComponents (Scalar &angle) const |
RotationX | Inverse () const |
Return inverse of a rotation. | |
void | Invert () |
Invert a rotation in place. | |
bool | operator!= (const RotationX &rhs) const |
template<class CoordSystem , class U > | |
DisplacementVector3D< CoordSystem, U > | operator() (const DisplacementVector3D< CoordSystem, U > &v) const |
Rotation operation on a cartesian vector. | |
template<class ForeignVector > | |
ForeignVector | operator() (const ForeignVector &v) const |
Rotation operation on an arbitrary vector v. | |
template<class CoordSystem > | |
LorentzVector< CoordSystem > | operator() (const LorentzVector< CoordSystem > &v) const |
Rotation operation on a Lorentz vector in any 4D coordinate system. | |
template<class CoordSystem , class U > | |
PositionVector3D< CoordSystem, U > | operator() (const PositionVector3D< CoordSystem, U > &v) const |
Rotation operation on a position vector in any coordinate system. | |
template<class AVector > | |
AVector | operator* (const AVector &v) const |
Overload operator * for rotation on a vector. | |
RotationX | operator* (const RotationX &r) const |
Multiply (combine) two rotations. | |
RotationX & | operator*= (const RotationX &r) |
Post-Multiply (on right) by another rotation : T = T*R. | |
bool | operator== (const RotationX &rhs) const |
Equality/inequality operators. | |
void | Rectify () |
Rectify makes sure the angle is in (-pi,pi]. | |
void | SetAngle (Scalar angle) |
Set given the angle. | |
void | SetComponents (Scalar angle) |
Scalar | SinAngle () const |
Sine or Cosine of the rotation angle. | |
Private Attributes | |
Scalar | fAngle |
Scalar | fCos |
Scalar | fSin |
#include <Math/GenVector/RotationX.h>
Definition at line 50 of file RotationX.h.
|
inline |
Default constructor (identity rotation)
Definition at line 58 of file RotationX.h.
|
inlineexplicit |
Construct from an angle.
Definition at line 63 of file RotationX.h.
|
inline |
Angle of rotation.
Definition at line 106 of file RotationX.h.
|
inline |
Definition at line 112 of file RotationX.h.
|
inline |
Get the angle.
Definition at line 100 of file RotationX.h.
|
inline |
Definition at line 101 of file RotationX.h.
|
inline |
Return inverse of a rotation.
Definition at line 190 of file RotationX.h.
|
inline |
Invert a rotation in place.
Definition at line 185 of file RotationX.h.
Definition at line 218 of file RotationX.h.
|
inline |
Rotation operation on a cartesian vector.
Rotation operation on a displacement vector in any coordinate system
Definition at line 130 of file RotationX.h.
|
inline |
Rotation operation on an arbitrary vector v.
Preconditions: v must implement methods x(), y(), and z() and the arbitrary vector type must have a constructor taking (x,y,z)
Definition at line 166 of file RotationX.h.
|
inline |
Rotation operation on a Lorentz vector in any 4D coordinate system.
Definition at line 152 of file RotationX.h.
|
inline |
Rotation operation on a position vector in any coordinate system.
Definition at line 141 of file RotationX.h.
Overload operator * for rotation on a vector.
Definition at line 177 of file RotationX.h.
Multiply (combine) two rotations.
Definition at line 197 of file RotationX.h.
Post-Multiply (on right) by another rotation : T = T*R.
Definition at line 209 of file RotationX.h.
Equality/inequality operators.
Definition at line 214 of file RotationX.h.
|
inline |
Rectify makes sure the angle is in (-pi,pi].
Definition at line 75 of file RotationX.h.
|
inline |
Set given the angle.
Definition at line 89 of file RotationX.h.
|
inline |
Definition at line 95 of file RotationX.h.
|
inline |
Sine or Cosine of the rotation angle.
Definition at line 111 of file RotationX.h.
|
private |
Definition at line 224 of file RotationX.h.
|
private |
Definition at line 226 of file RotationX.h.
|
private |
Definition at line 225 of file RotationX.h.