|  | 
| double | Amg::angle (const Amg::Vector3D &v1, const Amg::Vector3D &v2) | 
|  | calculates the opening angle between two vectors  More... 
 | 
|  | 
| float | Amg::distance2 (const Amg::Vector3D &p1, const Amg::Vector3D &p2) | 
|  | calculates the squared distance between two point in 3D space  More... 
 | 
|  | 
| float | Amg::distance (const Amg::Vector3D &p1, const Amg::Vector3D &p2) | 
|  | calculates the distance between two point in 3D space  More... 
 | 
|  | 
| void | Amg::setPhi (Amg::Vector3D &v, double phi) | 
|  | sets the phi angle of a vector without changing theta nor the magnitude  More... 
 | 
|  | 
| void | Amg::setThetaPhi (Amg::Vector3D &v, double theta, double phi) | 
|  | sets the theta and phi angle of a vector without changing the magnitude  More... 
 | 
|  | 
| void | Amg::setRThetaPhi (Amg::Vector3D &v, double r, double theta, double phi) | 
|  | sets radius, the theta and phi angle of a vector.  More... 
 | 
|  | 
| void | Amg::setTheta (Amg::Vector3D &v, double theta) | 
|  | sets the theta of a vector without changing phi nor the magnitude  More... 
 | 
|  | 
| void | Amg::setPerp (Amg::Vector3D &v, double perp) | 
|  | scales the vector in the xy plane without changing the z coordinate nor the angles  More... 
 | 
|  | 
| void | Amg::setMag (Amg::Vector3D &v, double mag) | 
|  | scales the vector length without changing the angles  More... 
 | 
|  | 
| double | Amg::deltaPhi (const Amg::Vector3D &v1, const Amg::Vector3D &v2) | 
|  | 
| double | Amg::deltaR (const Amg::Vector3D &v1, const Amg::Vector3D &v2) | 
|  | 
| void | Amg::setVector3DCartesian (Amg::Vector3D &v1, double x1, double y1, double z1) | 
|  | Sets components in cartesian coordinate system.  More... 
 | 
|  | 
| double | Amg::mag2Vector3D (const Amg::Vector3D &v1) | 
|  | Gets magnitude squared of the vector.  More... 
 | 
|  | 
| double | Amg::magVector3D (const Amg::Vector3D &v1) | 
|  | Gets magnitude of the vector.  More... 
 | 
|  | 
| double | Amg::rVector3D (const Amg::Vector3D &v1) | 
|  | Gets r-component in spherical coordinate system.  More... 
 | 
|  | 
| Amg::Vector3D | Amg::transform (Amg::Vector3D &v, Amg::Transform3D &tr) | 
|  | Transform a point from a Trasformation3D.  More... 
 | 
|  | 
| Amg::Transform3D | Amg::getTransformFromRotTransl (Amg::RotationMatrix3D rot, Amg::Vector3D transl_vec) | 
|  | 
| void | Amg::getAngleAxisFromRotation (Amg::RotationMatrix3D &rotation, double &rotationAngle, Amg::Vector3D &rotationAxis) | 
|  | 
| Amg::Vector3D | Amg::getTranslationVectorFromTransform (const Amg::Transform3D &tr) | 
|  | Get the Translation vector out of a Transformation.  More... 
 | 
|  | 
| Amg::Rotation3D | Amg::getRotation3DfromAngleAxis (double angle, Amg::Vector3D &axis) | 
|  | get a AngleAxis from an angle and an axis.  More... 
 | 
|  | 
| Amg::Transform3D | Amg::getRotateX3D (double angle) | 
|  | get a rotation transformation around X-axis  More... 
 | 
|  | 
| Amg::Transform3D | Amg::getRotateY3D (double angle) | 
|  | get a rotation transformation around Y-axis  More... 
 | 
|  | 
| Amg::Transform3D | Amg::getRotateZ3D (double angle) | 
|  | get a rotation transformation around Z-axis  More... 
 | 
|  | 
| Amg::Transform3D | Amg::getTranslateX3D (const double X) | 
|  | : Returns a shift transformation along the x-axis  More... 
 | 
|  | 
| Amg::Transform3D | Amg::getTranslateY3D (const double Y) | 
|  | : Returns a shift transformation along the y-axis  More... 
 | 
|  | 
| Amg::Transform3D | Amg::getTranslateZ3D (const double Z) | 
|  | : Returns a shift transformation along the z-axis  More... 
 | 
|  | 
| Amg::Transform3D | Amg::getTranslate3D (const double X, const double Y, const double Z) | 
|  | : Returns a shift transformation along an arbitrary axis  More... 
 | 
|  | 
| Amg::Transform3D | Amg::getTranslate3D (const Amg::Vector3D &v) | 
|  | : Returns a shift transformation along an arbitrary axis  More... 
 | 
|  | 
| Amg::Vector3D | Amg::dirFromAngles (const double phi, const double theta) | 
|  | Constructs a direction vector from the azimuthal & polar angles.  More... 
 | 
|  | 
| template<int N> | 
| double | Amg::lineDistance (const AmgVector(N)&posA, const AmgVector(N)&dirA, const AmgVector(N)&posB, const AmgVector(N)&dirB) | 
|  | : Calculates the shortest distance between two lines  More... 
 | 
|  | 
| double | Amg::signedDistance (const Amg::Vector3D &posA, const Amg::Vector3D &dirA, const Amg::Vector3D &posB, const Amg::Vector3D &dirB) | 
|  | Calculates the signed distance between two lines in 3D space.  More... 
 | 
|  | 
| template<int N> | 
| std::optional< double > | Amg::intersect (const AmgVector(N)&posA, const AmgVector(N)&dirA, const AmgVector(N)&posB, const AmgVector(N)&dirB) | 
|  | Calculates the point B' along the line B that's closest to a second line A.  More... 
 | 
|  | 
| template<int N> | 
| std::optional< double > | Amg::intersect (const AmgVector(N)&pos, const AmgVector(N)&dir, const AmgVector(N)&planeNorm, const double offset) | 
|  | Intersects a line parametrized as A + lambda * B with the (N-1) dimensional hyperplane that's given in the Hesse normal form <P, N> - C = 0 More...
 
 | 
|  | 
| bool | Amg::doesNotDeform (const Amg::Transform3D &trans) | 
|  | Checks whether the linear part of the transformation rotates or stetches any of the basis vectors.  More... 
 | 
|  | 
| bool | Amg::isIdentity (const Amg::Transform3D &trans) | 
|  | Checks whether the transformation is the Identity transformation.  More... 
 | 
|  |