|
ROOT
Reference Guide |
|
Go to the documentation of this file.
17 #ifndef ROOT_Math_GenVector_RotationX
18 #define ROOT_Math_GenVector_RotationX 1
125 template <
class CoordSystem,
class U>
136 template <
class CoordSystem,
class U>
147 template <
class CoordSystem>
161 template <
class ForeignVector>
166 return ForeignVector ( rxyz.
X(), rxyz.
Y(), rxyz.
Z() );
172 template <
class AVector>
244 os <<
" RotationX(" <<
r.Angle() <<
") ";
bool operator!=(const RotationX &rhs) const
void Rectify()
Rectify makes sure the angle is in (-pi,pi].
Scalar Angle() const
Angle of rotation.
void SetComponents(Scalar angle)
Class describing a generic position vector (point) in 3 dimensions.
RotationX & operator*=(const RotationX &r)
Post-Multiply (on right) by another rotation : T = T*R.
AVector operator*(const AVector &v) const
Overload operator * for rotation on a vector.
Scalar SinAngle() const
Sine or Cosine of the rotation angle.
std::ostream & operator<<(std::ostream &os, const AxisAngle &a)
Stream Output and Input.
void GetComponents(Scalar &angle) const
RotationX()
Default constructor (identity rotation)
Scalar Y() const
Cartesian Y, converting if necessary from internal coordinate system.
void GetAngle(Scalar &angle) const
Get the angle.
#define R(a, b, c, d, e, f, g, h, i)
double dist(Rotation3D const &r1, Rotation3D const &r2)
double atan2(double, double)
VecExpr< UnaryOp< Fabs< T >, VecExpr< A, T, D >, T >, T, D > fabs(const VecExpr< A, T, D > &rhs)
DisplacementVector3D< CoordSystem, U > operator()(const DisplacementVector3D< CoordSystem, U > &v) const
Rotation operation on a cartesian vector.
RotationX Inverse() const
Return inverse of a rotation.
Scalar X() const
Cartesian X, converting if necessary from internal coordinate system.
void Invert()
Invert a rotation in place.
Rotation class representing a 3D rotation about the X axis by the angle of rotation.
bool operator==(const RotationX &rhs) const
Equality/inequality operators.
Scalar Z() const
Cartesian Z, converting if necessary from internal coordinate system.
RotationX(Scalar angle)
Construct from an angle.
DisplacementVector3D< CoordSystem, Tag > & SetXYZ(Scalar a, Scalar b, Scalar c)
set the values of the vector from the cartesian components (x,y,z) (if the vector is held in polar or...
Class describing a generic displacement vector in 3 dimensions.
void SetAngle(Scalar angle)
Set given the angle.
AxisAngle::Scalar Distance(const AxisAngle &r1, const R &r2)
Distance between two rotations.
tbb::task_arena is an alias of tbb::interface7::task_arena, which doesn't allow to forward declare tb...
Namespace for new Math classes and functions.
Class describing a generic LorentzVector in the 4D space-time, using the specified coordinate system ...