17#ifndef ROOT_Math_GenVector_RotationZ
18#define ROOT_Math_GenVector_RotationZ 1
127 template <
class CoordSystem,
class U>
138 template <
class CoordSystem,
class U>
149 template <
class CoordSystem>
163 template <
class ForeignVector>
168 return ForeignVector ( rxyz.
X(), rxyz.
Y(), rxyz.
Z() );
174 template <
class AVector>
245std::ostream & operator<< (std::ostream & os,
const RotationZ &
r) {
246 os <<
" RotationZ(" <<
r.Angle() <<
") ";
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t WindowAttributes_t Float_t r
Option_t Option_t TPoint TPoint angle
Class describing a generic displacement vector in 3 dimensions.
Scalar X() const
Cartesian X, converting if necessary from internal coordinate system.
Scalar Y() const
Cartesian Y, converting if necessary from internal coordinate system.
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...
Scalar Z() const
Cartesian Z, converting if necessary from internal coordinate system.
Class describing a generic LorentzVector in the 4D space-time, using the specified coordinate system ...
Class describing a generic position vector (point) in 3 dimensions.
Rotation class representing a 3D rotation about the Z axis by the angle of rotation.
bool operator==(const RotationZ &rhs) const
Equality/inequality operators.
RotationZ & operator*=(const RotationZ &r)
Post-Multiply (on right) by another rotation : T = T*R.
RotationZ(Scalar angle)
Construct from an angle.
RotationZ Inverse() const
Return inverse of a rotation.
bool operator!=(const RotationZ &rhs) const
void SetAngle(Scalar angle)
Set given the angle.
void Rectify()
Rectify makes sure the angle is in (-pi,pi].
DisplacementVector3D< CoordSystem, U > operator()(const DisplacementVector3D< CoordSystem, U > &v) const
Rotation operation on a displacement vector in any coordinate system.
RotationZ()
Default constructor (identity rotation)
AVector operator*(const AVector &v) const
Overload operator * for rotation on a vector.
Scalar Angle() const
Angle of rotation.
void Invert()
Invert a rotation in place.
void GetComponents(Scalar &angle) const
void GetAngle(Scalar &angle) const
Get the angle.
void SetComponents(Scalar angle)
Scalar SinAngle() const
Sine or Cosine of the rotation angle.
Namespace for new Math classes and functions.
double dist(Rotation3D const &r1, Rotation3D const &r2)
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...