template<typename T = double>
class ROOT::Math::Impl::Translation3D< T >
Class describing a 3 dimensional translation.
It can be combined (using the operator *) with the ROOT::Math::Rotation3D classes and ROOT::Math::Transform3D to obtained combined transformations and to operate on points and vectors. Note that a the translation applied to a Vector object (DisplacementVector3D and LorentzVector classes) performs a noop, i.e. it returns the same vector. A translation can be applied only to the Point objects (PositionVector3D classes).
- See also
- Overview of the physics vector library
Definition at line 53 of file Translation3D.h.
|
| Translation3D () |
| Default constructor ( zero translation )
|
|
template<class CoordSystem , class Tag > |
constexpr | Translation3D (const DisplacementVector3D< CoordSystem, Tag > &v) |
| Construct from any Displacement vector in ant tag and coordinate system.
|
|
template<class CoordSystem , class Tag > |
| Translation3D (const PositionVector3D< CoordSystem, Tag > &p1, const PositionVector3D< CoordSystem, Tag > &p2) |
| Construct transformation from one coordinate system defined one point (the origin) to a new coordinate system defined by other point (origin )
|
|
template<class IT > |
| Translation3D (IT begin, IT end) |
| Construct given a pair of pointers or iterators defining the beginning and end of an array of 3 Scalars representing the z,y,z of the translation vector.
|
|
| Translation3D (T dx, T dy, T dz) |
| Construct from x,y,z values representing the translation.
|
|
template<class IT > |
void | GetComponents (IT begin) const |
| Get the 3 matrix components into data specified by an iterator begin.
|
|
template<class IT > |
void | GetComponents (IT begin, IT end) const |
| Get the 3 components into data specified by an iterator begin and another to the end of the desired data (12 past start).
|
|
void | GetComponents (T &dx, T &dy, T &dz) const |
| Get the components into 3 scalars.
|
|
Translation3D< T > | Inverse () const |
| Return the inverse of the transformation.
|
|
void | Invert () |
| Invert the transformation in place.
|
|
bool | operator!= (const Translation3D< T > &rhs) const |
|
template<class CoordSystem , class Tag > |
DisplacementVector3D< CoordSystem, Tag > | operator() (const DisplacementVector3D< CoordSystem, Tag > &v) const |
| Transformation operation for Displacement Vector in any coordinate system and default tag For the Displacement Vectors no translation apply so return the vector itself.
|
|
template<class CoordSystem > |
LorentzVector< CoordSystem > | operator() (const LorentzVector< CoordSystem > &q) const |
| Transformation operation for a Lorentz Vector in any coordinate system A LorentzVector contains a displacement vector so no translation applies as well.
|
|
Plane3D< T > | operator() (const Plane3D< T > &plane) const |
| Transformation on a 3D plane.
|
|
template<class CoordSystem , class Tag > |
PositionVector3D< CoordSystem, Tag > | operator() (const PositionVector3D< CoordSystem, Tag > &p) const |
| Transformation operation for Position Vector in any coordinate system and default tag.
|
|
template<class CoordSystem , class Tag > |
DisplacementVector3D< CoordSystem, Tag > | operator* (const DisplacementVector3D< CoordSystem, Tag > &v) const |
| Transformation operation.
|
|
template<class CoordSystem > |
LorentzVector< CoordSystem > | operator* (const LorentzVector< CoordSystem > &q) const |
| Transformation operation.
|
|
template<class CoordSystem , class Tag > |
PositionVector3D< CoordSystem, Tag > | operator* (const PositionVector3D< CoordSystem, Tag > &v) const |
| Transformation operation.
|
|
Translation3D< T > | operator* (const Translation3D< T > &t) const |
| multiply (combine) two transformations
|
|
Translation3D< T > & | operator*= (const Translation3D< T > &t) |
| multiply (combine) with another transformation in place
|
|
bool | operator== (const Translation3D< T > &rhs) const |
| Equality/inequality operators.
|
|
template<class IT > |
void | SetComponents (IT begin, IT end) |
| Set the 3 components given an iterator to the start of the desired data, and another to the end (3 past start).
|
|
void | SetComponents (T dx, T dy, T dz) |
| Set the components from 3 scalars.
|
|
void | SetXYZ (T dx, T dy, T dz) |
| Set the XYZ vector components from 3 scalars.
|
|
template<class CoordSystem , class Tag1 , class Tag2 > |
void | Transform (const DisplacementVector3D< CoordSystem, Tag1 > &v1, DisplacementVector3D< CoordSystem, Tag2 > &v2) const |
| Transformation operation for Displacement Vector of different coordinate systems.
|
|
template<class CoordSystem , class Tag1 , class Tag2 > |
void | Transform (const PositionVector3D< CoordSystem, Tag1 > &p1, PositionVector3D< CoordSystem, Tag2 > &p2) const |
| Transformation operation for points between different coordinate system tags.
|
|
const Vector & | Vect () const |
| return a const reference to the underline vector representing the translation
|
|