|
template<typename Scalar > |
Scalar | Eta_FromRhoZ (Scalar rho, Scalar z) |
| Calculate eta given rho and zeta. More...
|
|
template<typename Scalar > |
Scalar | Eta_FromTheta (Scalar theta, Scalar r) |
| Implementation of eta from -log(tan(theta/2)). More...
|
|
template<class T > |
Transform3D< T > | operator* (const Rotation3D &r, const Translation3D< T > &t) |
| combine a translation and a rotation to give a transform3d First the translation then the rotation More...
|
|
template<class T > |
Transform3D< T > | operator* (const RotationX &r, const Translation3D< T > &t) |
|
template<class T > |
Transform3D< T > | operator* (const RotationY &r, const Translation3D< T > &t) |
|
template<class T > |
Transform3D< T > | operator* (const RotationZ &r, const Translation3D< T > &t) |
|
template<class T > |
Transform3D< T > | operator* (const RotationZYX &r, const Translation3D< T > &t) |
|
template<class T > |
Transform3D< T > | operator* (const AxisAngle &r, const Translation3D< T > &t) |
|
template<class T > |
Transform3D< T > | operator* (const EulerAngles &r, const Translation3D< T > &t) |
|
template<class T > |
Transform3D< T > | operator* (const Quaternion &r, const Translation3D< T > &t) |
|
template<class T > |
Transform3D< T > | operator* (const Translation3D< T > &t, const Rotation3D &r) |
| combine a rotation and a translation to give a transform3d First a rotation then the translation More...
|
|
template<class T > |
Transform3D< T > | operator* (const Translation3D< T > &t, const RotationX &r) |
|
template<class T > |
Transform3D< T > | operator* (const Translation3D< T > &t, const RotationY &r) |
|
template<class T > |
Transform3D< T > | operator* (const Translation3D< T > &t, const RotationZ &r) |
|
template<class T > |
Transform3D< T > | operator* (const Translation3D< T > &t, const RotationZYX &r) |
|
template<class T > |
Transform3D< T > | operator* (const Translation3D< T > &t, const EulerAngles &r) |
|
template<class T > |
Transform3D< T > | operator* (const Translation3D< T > &t, const Quaternion &r) |
|
template<class T > |
Transform3D< T > | operator* (const Translation3D< T > &t, const AxisAngle &r) |
|
template<class T > |
Transform3D< T > | operator* (const Transform3D< T > &t, const Translation3D< T > &d) |
| combine a transformation and a translation to give a transform3d First the translation then the transform3D More...
|
|
template<class T > |
Transform3D< T > | operator* (const Translation3D< T > &d, const Transform3D< T > &t) |
| combine a translation and a transformation to give a transform3d First the transformation then the translation More...
|
|
template<class T > |
Transform3D< T > | operator* (const Transform3D< T > &t, const Rotation3D &r) |
| combine a transformation and a rotation to give a transform3d First the rotation then the transform3D More...
|
|
template<class T > |
Transform3D< T > | operator* (const Transform3D< T > &t, const RotationX &r) |
|
template<class T > |
Transform3D< T > | operator* (const Transform3D< T > &t, const RotationY &r) |
|
template<class T > |
Transform3D< T > | operator* (const Transform3D< T > &t, const RotationZ &r) |
|
template<class T > |
Transform3D< T > | operator* (const Transform3D< T > &t, const RotationZYX &r) |
|
template<class T > |
Transform3D< T > | operator* (const Transform3D< T > &t, const EulerAngles &r) |
|
template<class T > |
Transform3D< T > | operator* (const Transform3D< T > &t, const AxisAngle &r) |
|
template<class T > |
Transform3D< T > | operator* (const Transform3D< T > &t, const Quaternion &r) |
|
template<class T > |
Transform3D< T > | operator* (const Rotation3D &r, const Transform3D< T > &t) |
| combine a rotation and a transformation to give a transform3d First the transformation then the rotation More...
|
|
template<class T > |
Transform3D< T > | operator* (const RotationX &r, const Transform3D< T > &t) |
|
template<class T > |
Transform3D< T > | operator* (const RotationY &r, const Transform3D< T > &t) |
|
template<class T > |
Transform3D< T > | operator* (const RotationZ &r, const Transform3D< T > &t) |
|
template<class T > |
Transform3D< T > | operator* (const RotationZYX &r, const Transform3D< T > &t) |
|
template<class T > |
Transform3D< T > | operator* (const EulerAngles &r, const Transform3D< T > &t) |
|
template<class T > |
Transform3D< T > | operator* (const AxisAngle &r, const Transform3D< T > &t) |
|
template<class T > |
Transform3D< T > | operator* (const Quaternion &r, const Transform3D< T > &t) |
|
template<class T > |
std::ostream & | operator<< (std::ostream &os, const Translation3D< T > &t) |
|
template<typename T > |
std::ostream & | operator<< (std::ostream &os, const Plane3D< T > &p) |
| Stream Output and Input. More...
|
|
template<class T > |
std::ostream & | operator<< (std::ostream &os, const Transform3D< T > &t) |
| print the 12 components of the Transform3D More...
|
|
template<typename Scalar >
Calculate eta given rho and zeta.
This formula is faster than the standard calculation (below) from log(tan(theta/2) but one has to be careful when rho is much smaller than z (large eta values) Formula is eta = log( zs + sqrt(zs^2 + 1) ) where zs = z/rho
For large value of z_scaled (tan(theta) ) one can appoximate the sqrt via a Taylor expansion We do the approximation of the sqrt if the numerical error is of the same order of second term of the sqrt.expansion: eps > 1/zs^4 => zs > 1/(eps^0.25)
When rho == 0 we use etaMax (see definition in etaMax.h)
Definition at line 48 of file eta.h.