ROOT
6.07/01
Reference Guide
|
Rotation class representing a 3D rotation about the Z 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 RotationZ.h.
Public Types | |
typedef double | Scalar |
Public Member Functions | |
RotationZ () | |
Default constructor (identity rotation) More... | |
RotationZ (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... | |
RotationZ | Inverse () const |
Return inverse of a rotation. More... | |
RotationZ | operator* (const RotationZ &r) const |
Multiply (combine) two rotations. More... | |
RotationZ & | operator*= (const RotationZ &r) |
Post-Multiply (on right) by another rotation : T = T*R. More... | |
bool | operator== (const RotationZ &rhs) const |
Equality/inequality operators. More... | |
bool | operator!= (const RotationZ &rhs) const |
Private Attributes | |
Scalar | fAngle |
Scalar | fSin |
Scalar | fCos |
#include <Math/GenVector/RotationZ.h>
typedef double ROOT::Math::RotationZ::Scalar |
Definition at line 47 of file RotationZ.h.
|
inline |
Default constructor (identity rotation)
Definition at line 55 of file RotationZ.h.
|
inlineexplicit |
Construct from an angle.
Definition at line 60 of file RotationZ.h.
|
inline |
Angle of rotation.
Definition at line 103 of file RotationZ.h.
Referenced by ROOT::Math::gv_detail::convert(), ROOT::Math::RotationZYX::operator*(), ROOT::Math::EulerAngles::operator*(), and ROOT::Math::operator<<().
|
inline |
Definition at line 109 of file RotationZ.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 RotationZ.h.
|
inline |
Return inverse of a rotation.
Definition at line 187 of file RotationZ.h.
|
inline |
|
inline |
Definition at line 215 of file RotationZ.h.
|
inline |
Rotation operation on a cartesian vector.
Rotation operation on a displacement vector in any coordinate system
Definition at line 127 of file RotationZ.h.
Referenced by operator()(), and operator*().
|
inline |
Rotation operation on a position vector in any coordinate system.
Definition at line 138 of file RotationZ.h.
|
inline |
Rotation operation on a Lorentz vector in any 4D coordinate system.
Definition at line 149 of file RotationZ.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 RotationZ.h.
|
inline |
Overload operator * for rotation on a vector.
Definition at line 174 of file RotationZ.h.
Multiply (combine) two rotations.
Definition at line 194 of file RotationZ.h.
Post-Multiply (on right) by another rotation : T = T*R.
Definition at line 206 of file RotationZ.h.
|
inline |
Equality/inequality operators.
Definition at line 211 of file RotationZ.h.
Referenced by operator!=().
|
inline |
Rectify makes sure the angle is in (-pi,pi].
Definition at line 72 of file RotationZ.h.
Referenced by RotationZ(), and SetAngle().
Definition at line 92 of file RotationZ.h.
|
inline |
Sine or Cosine of the rotation angle.
Definition at line 108 of file RotationZ.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 RotationZ.h.
Referenced by Invert(), operator*(), operator==(), Rectify(), and SetAngle().
|
private |
Definition at line 223 of file RotationZ.h.
Referenced by Angle(), CosAngle(), GetAngle(), operator()(), operator*(), Rectify(), and SetAngle().
|
private |
Definition at line 222 of file RotationZ.h.
Referenced by Angle(), GetAngle(), Invert(), operator()(), operator*(), Rectify(), SetAngle(), and SinAngle().