17 #ifndef ROOT_Math_GenVector_RotationY
18 #define ROOT_Math_GenVector_RotationY 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 <<
" RotationY(" << r.
Angle() <<
") ";
252 #endif // ROOT_Math_GenVector_RotationY
Scalar E() const
return 4-th component (time, or energy for a 4-momentum vector)
XYZVector ans(TestRotation const &t, XYZVector const &v_in)
Class describing a generic LorentzVector in the 4D space-time, using the specified coordinate system ...
double dist(Rotation3D const &r1, Rotation3D const &r2)
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...
void GetComponents(Scalar &angle) const
::ROOT::Math::DisplacementVector3D< Cartesian3D< Scalar > > Vect() const
get the spatial components of the Vector in a DisplacementVector based on Cartesian Coordinates ...
Scalar Y() const
Cartesian Y, converting if necessary from internal coordinate system.
void Invert()
Invert a rotation in place.
RotationY()
Default constructor (identity rotation)
Class describing a generic position vector (point) in 3 dimensions.
std::ostream & operator<<(std::ostream &os, const AxisAngle &a)
Stream Output and Input.
RotationY & operator*=(const RotationY &r)
Post-Multiply (on right) by another rotation : T = T*R.
Rotation class representing a 3D rotation about the Y axis by the angle of rotation.
Scalar X() const
Cartesian X, converting if necessary from internal coordinate system.
Scalar SinAngle() const
Sine or Cosine of the rotation angle.
void Rectify()
Rectify makes sure the angle is in (-pi,pi].
void SetAngle(Scalar angle)
Set given the angle.
bool operator!=(const RotationY &rhs) const
Class describing a generic displacement vector in 3 dimensions.
VecExpr< UnaryOp< Fabs< T >, VecExpr< A, T, D >, T >, T, D > fabs(const VecExpr< A, T, D > &rhs)
void GetAngle(Scalar &angle) const
Get the angle.
unsigned int r1[N_CITIES]
bool operator==(const RotationY &rhs) const
Equality/inequality operators.
RotationY Inverse() const
Return inverse of a rotation.
void SetComponents(Scalar angle)
Scalar Z() const
Cartesian Z, converting if necessary from internal coordinate system.
double atan2(double, double)
AxisAngle::Scalar Distance(const AxisAngle &r1, const R &r2)
Distance between two rotations.
AVector operator*(const AVector &v) const
Overload operator * for rotation on a vector.
DisplacementVector3D< CoordSystem, U > operator()(const DisplacementVector3D< CoordSystem, U > &v) const
Rotation operation on a cartesian vector.
Scalar Angle() const
Angle of rotation.
RotationY(Scalar angle)
Construct from an angle.
unsigned int r2[N_CITIES]