template<
typename T = double>
class ROOT::ROOT_MATH_ARCH::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
 - Physics Vectors 
 
Definition at line 56 of file Translation3D.h.
 | 
|   | Translation3D () | 
|   | Default constructor ( zero translation )  
  | 
|   | 
| template<class CoordSystem , class Tag >  | 
|   | 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  
  | 
|   |