#include <transform3DTo2D.h>
Public Member Functions | |
Transform3DTo2D () | |
Default constructor. | |
Transform3DTo2D (double a00, double a01, double a02, double a03, double a10, double a11, double a12, double a13, double a20, double a21, double a22, double a23) | |
Build a Transform3DTo2D instance by explicitly setting element values as if setting the elements of a 3x4 transformation matrix: [[a00, a01, a02, a03], [a10, a11, a12, a13], [a20, a21, a22, a23]]. | |
Transform3DTo2D (const Array2D< double > &source) | |
Build a Transform3D from a homogeneous 3x4 matrix. | |
Transform3DTo2D (const Transform3DTo2D &src) | |
The copy constructor simply duplicates its argument. | |
~Transform3DTo2D () | |
Destructor. | |
Transform3DTo2DFunctor | getFunctor () const |
This member function returns a functor which makes it easier to transform arrays of points using algorithms such as std::transform(). | |
void | setTransform (double a00, double a01, double a02, double a03, double a10, double a11, double a12, double a13, double a20, double a21, double a22, double a23) |
Change the Transform3DTo2D value by explicitly setting element values as if setting the elements of a 3x4 transformation matrix: [[a00, a01, a02, a03], [a10, a11, a12, a13], [a20, a21, a22, a23]]. | |
template<size_t row, size_t column> | |
double | value () const |
This member function returns one element from the matrix representation of the coordinate transform by reference. | |
double | operator() (size_t row, size_t column) const |
This operator returns one element from the matrix representation of the coordinate transform by reference. | |
Vector2D | operator* (const Vector3D &vector0) const |
Applies the coordinate transformation to a Vector3D point and returns the result. | |
Transform3DTo2D & | operator= (const Transform3DTo2D &source) |
The assignment operator simply duplicates its argument. |
Definition at line 36 of file transform3DTo2D.h.
dlr::numeric::Transform3DTo2D::Transform3DTo2D | ( | ) | [inline] |
dlr::numeric::Transform3DTo2D::Transform3DTo2D | ( | double | a00, | |
double | a01, | |||
double | a02, | |||
double | a03, | |||
double | a10, | |||
double | a11, | |||
double | a12, | |||
double | a13, | |||
double | a20, | |||
double | a21, | |||
double | a22, | |||
double | a23 | |||
) | [inline] |
Build a Transform3DTo2D instance by explicitly setting element values as if setting the elements of a 3x4 transformation matrix: [[a00, a01, a02, a03], [a10, a11, a12, a13], [a20, a21, a22, a23]].
a00 | The value of one element of the transformation matrix. | |
a01 | The value of one element of the transformation matrix. | |
a02 | The value of one element of the transformation matrix. | |
a03 | The value of one element of the transformation matrix. | |
a10 | The value of one element of the transformation matrix. | |
a11 | The value of one element of the transformation matrix. | |
a12 | The value of one element of the transformation matrix. | |
a13 | The value of one element of the transformation matrix. | |
a20 | The value of one element of the transformation matrix. | |
a21 | The value of one element of the transformation matrix. | |
a22 | The value of one element of the transformation matrix. | |
a23 | The value of one element of the transformation matrix. |
Definition at line 68 of file transform3DTo2D.h.
dlr::numeric::Transform3DTo2D::Transform3DTo2D | ( | const Array2D< double > & | source | ) |
Build a Transform3D from a homogeneous 3x4 matrix.
source | A 2D array containing the elements of the desired homogeneous transformation. |
Definition at line 23 of file transform3DTo2D.cpp.
References dlr::numeric::Array2D< Type >::columns(), and dlr::numeric::Array2D< Type >::rows().
dlr::numeric::Transform3DTo2D::Transform3DTo2D | ( | const Transform3DTo2D & | src | ) | [inline] |
The copy constructor simply duplicates its argument.
src | This is the Transform3DTo2D instance to be copied. |
Definition at line 90 of file transform3DTo2D.h.
dlr::numeric::Transform3DTo2D::~Transform3DTo2D | ( | ) | [inline] |
Transform3DTo2DFunctor dlr::numeric::Transform3DTo2D::getFunctor | ( | ) | const |
This member function returns a functor which makes it easier to transform arrays of points using algorithms such as std::transform().
For example:
std::transform(myPoints.begin(), myPoints.end(), myNewPoints.begin(), myTransform.getFunctor());
Definition at line 44 of file transform3DTo2D.cpp.
double dlr::numeric::Transform3DTo2D::operator() | ( | size_t | row, | |
size_t | column | |||
) | const |
This operator returns one element from the matrix representation of the coordinate transform by reference.
If blindingly fast execution is important, consider using value<size_t, size_t>() member function.
row | The row of the requested element. | |
column | The column of the requested element. |
row | The row of the requested element. | |
column | The column of the requested element. |
Definition at line 112 of file transform3DTo2D.cpp.
Applies the coordinate transformation to a Vector3D point and returns the result.
vector0 | The point to be transformed. |
Definition at line 158 of file transform3DTo2D.cpp.
References dlr::numeric::Vector3D::x(), dlr::numeric::Vector3D::y(), and dlr::numeric::Vector3D::z().
Transform3DTo2D & dlr::numeric::Transform3DTo2D::operator= | ( | const Transform3DTo2D & | source | ) |
void dlr::numeric::Transform3DTo2D::setTransform | ( | double | a00, | |
double | a01, | |||
double | a02, | |||
double | a03, | |||
double | a10, | |||
double | a11, | |||
double | a12, | |||
double | a13, | |||
double | a20, | |||
double | a21, | |||
double | a22, | |||
double | a23 | |||
) |
Change the Transform3DTo2D value by explicitly setting element values as if setting the elements of a 3x4 transformation matrix: [[a00, a01, a02, a03], [a10, a11, a12, a13], [a20, a21, a22, a23]].
a00 | The value of one element of the transformation matrix. | |
a01 | The value of one element of the transformation matrix. | |
a02 | The value of one element of the transformation matrix. | |
a03 | The value of one element of the transformation matrix. | |
a10 | The value of one element of the transformation matrix. | |
a11 | The value of one element of the transformation matrix. | |
a12 | The value of one element of the transformation matrix. | |
a13 | The value of one element of the transformation matrix. | |
a20 | The value of one element of the transformation matrix. | |
a21 | The value of one element of the transformation matrix. | |
a22 | The value of one element of the transformation matrix. | |
a23 | The value of one element of the transformation matrix. |
Definition at line 57 of file transform3DTo2D.cpp.
Referenced by dlr::numeric::operator>>().
double dlr::numeric::Transform3DTo2D::value | ( | ) | const [inline] |
This member function returns one element from the matrix representation of the coordinate transform by reference.
For example, calling myTransform3DTo2D.value<2, 3>() will return the element from the 2nd row, 3rd column of the matrix representation of the coordinate transformation.
The value of the requested element.
Definition at line 411 of file transform3DTo2D.h.
Referenced by dlr::numeric::operator*(), and dlr::numeric::operator<<().