ROOT
6.07/01
Reference Guide
|
Rotation class representing a 3D rotation about the X axis by the angle of rotation.
For efficiency reason, in addition to the the angle, the sine and cosine of the angle are held
Definition at line 43 of file RotationX.h.
Public Types | |
typedef double | Scalar |
Public Member Functions | |
RotationX () | |
Default constructor (identity rotation) More... | |
RotationX (Scalar angle) | |
Construct from an angle. More... | |
void | Rectify () |
Rectify makes sure the angle is in (-pi,pi]. More... | |
void | SetAngle (Scalar angle) |
Set given the angle. More... | |
void | SetComponents (Scalar angle) |
void | GetAngle (Scalar &angle) const |
Get the angle. More... | |
void | GetComponents (Scalar &angle) const |
Scalar | Angle () const |
Angle of rotation. More... | |
Scalar | SinAngle () const |
Sine or Cosine of the rotation angle. More... | |
Scalar | CosAngle () const |
template<class CoordSystem , class U > | |
DisplacementVector3D < CoordSystem, U > | operator() (const DisplacementVector3D< CoordSystem, U > &v) const |
Rotation operation on a cartesian vector. More... | |
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. More... | |
template<class CoordSystem > | |
LorentzVector< CoordSystem > | operator() (const LorentzVector< CoordSystem > &v) const |
Rotation operation on a Lorentz vector in any 4D coordinate system. More... | |
template<class ForeignVector > | |
ForeignVector | operator() (const ForeignVector &v) const |
Rotation operation on an arbitrary vector v. More... | |
template<class AVector > | |
AVector | operator* (const AVector &v) const |
Overload operator * for rotation on a vector. More... | |
void | Invert () |
Invert a rotation in place. More... | |
RotationX | Inverse () const |
Return inverse of a rotation. More... | |
RotationX | operator* (const RotationX &r) const |
Multiply (combine) two rotations. More... | |
RotationX & | operator*= (const RotationX &r) |
Post-Multiply (on right) by another rotation : T = T*R. More... | |
bool | operator== (const RotationX &rhs) const |
Equality/inequality operators. More... | |
bool | operator!= (const RotationX &rhs) const |
Private Attributes | |
Scalar | fAngle |
Scalar | fSin |
Scalar | fCos |
#include <Math/GenVector/RotationX.h>
typedef double ROOT::Math::RotationX::Scalar |
Definition at line 47 of file RotationX.h.
|
inline |
Default constructor (identity rotation)
Definition at line 55 of file RotationX.h.
|
inlineexplicit |
Construct from an angle.
Definition at line 60 of file RotationX.h.
|
inline |
Angle of rotation.
Definition at line 103 of file RotationX.h.
Referenced by ROOT::Math::gv_detail::convert(), and ROOT::Math::operator<<().
|
inline |
Definition at line 109 of file RotationX.h.
Referenced by ROOT::Math::gv_detail::convert(), ROOT::Math::LorentzRotation::LorentzRotation(), ROOT::Math::AxisAngle::operator*(), ROOT::Math::Rotation3D::operator*(), and ROOT::Math::operator*().
Definition at line 98 of file RotationX.h.
|
inline |
Return inverse of a rotation.
Definition at line 187 of file RotationX.h.
|
inline |
|
inline |
Definition at line 215 of file RotationX.h.
|
inline |
Rotation operation on a cartesian vector.
Rotation operation on a displacement vector in any coordinate system
Definition at line 127 of file RotationX.h.
Referenced by operator()(), and operator*().
|
inline |
Rotation operation on a position vector in any coordinate system.
Definition at line 138 of file RotationX.h.
|
inline |
Rotation operation on a Lorentz vector in any 4D coordinate system.
Definition at line 149 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 163 of file RotationX.h.
|
inline |
Overload operator * for rotation on a vector.
Definition at line 174 of file RotationX.h.
Multiply (combine) two rotations.
Definition at line 194 of file RotationX.h.
Post-Multiply (on right) by another rotation : T = T*R.
Definition at line 206 of file RotationX.h.
|
inline |
Equality/inequality operators.
Definition at line 211 of file RotationX.h.
Referenced by operator!=().
|
inline |
Rectify makes sure the angle is in (-pi,pi].
Definition at line 72 of file RotationX.h.
Referenced by RotationX(), and SetAngle().
Definition at line 92 of file RotationX.h.
|
inline |
Sine or Cosine of the rotation angle.
Definition at line 108 of file RotationX.h.
Referenced by ROOT::Math::gv_detail::convert(), ROOT::Math::LorentzRotation::LorentzRotation(), ROOT::Math::AxisAngle::operator*(), ROOT::Math::Rotation3D::operator*(), and ROOT::Math::operator*().
|
private |
Definition at line 221 of file RotationX.h.
Referenced by Invert(), operator*(), operator==(), Rectify(), and SetAngle().
|
private |
Definition at line 223 of file RotationX.h.
Referenced by Angle(), CosAngle(), GetAngle(), operator()(), operator*(), Rectify(), and SetAngle().
|
private |
Definition at line 222 of file RotationX.h.
Referenced by Angle(), GetAngle(), Invert(), operator()(), operator*(), Rectify(), SetAngle(), and SinAngle().