IMP
2.3.0
The Integrative Modeling Platform
|
Simple 2D transformation class. More...
#include <IMP/algebra/Transformation2D.h>
Simple 2D transformation class.
See geometric primitives for more information.
Definition at line 28 of file Transformation2D.h.
Public Member Functions | |
Transformation2D () | |
constructor. An invalid transformation is built More... | |
Transformation2D (const Rotation2D &r, const Vector2D &t=Vector2D(0.0, 0.0)) | |
basic constructor from a Rotation2D and translation vector More... | |
Transformation2D (const Vector2D &t) | |
Constructor for a transformation with an identity rotation. More... | |
Transformation2D | get_inverse () const |
Returns the inverse transformation. More... | |
const Rotation2D | get_rotation () const |
Returns the rotation. More... | |
Vector2D | get_transformed (const Vector2D &o) const |
Perform the transformation on an 2D vector. More... | |
const Vector2D | get_translation () const |
Returns the translation. More... | |
Vector2D | operator* (const Vector2D &v) const |
Perform the transformation on an 2D vector. More... | |
Transformation2D | operator* (const Transformation2D &tr) const |
compose two transformations More... | |
const Transformation2D & | operator*= (const Transformation2D &o) |
See help for operator*. More... | |
Transformation2D | operator/ (const Transformation2D &b) const |
const Transformation2D & | operator/= (const Transformation2D &o) |
See help for operator/. More... | |
void | set_rotation (double angle) |
void | set_translation (const Vector2D &v) |
Sets the translation. More... | |
void | show (std::ostream &out=std::cout) const |
IMP::algebra::Transformation2D::Transformation2D | ( | ) |
constructor. An invalid transformation is built
Definition at line 33 of file Transformation2D.h.
IMP::algebra::Transformation2D::Transformation2D | ( | const Rotation2D & | r, |
const Vector2D & | t = Vector2D(0.0, 0.0) |
||
) |
basic constructor from a Rotation2D and translation vector
Definition at line 36 of file Transformation2D.h.
IMP::algebra::Transformation2D::Transformation2D | ( | const Vector2D & | t | ) |
Constructor for a transformation with an identity rotation.
Definition at line 40 of file Transformation2D.h.
Transformation2D IMP::algebra::Transformation2D::get_inverse | ( | ) | const |
Returns the inverse transformation.
const Rotation2D IMP::algebra::Transformation2D::get_rotation | ( | ) | const |
Returns the rotation.
Definition at line 91 of file Transformation2D.h.
Perform the transformation on an 2D vector.
[in] | o | vector where the transformation is applied |
Definition at line 51 of file Transformation2D.h.
const Vector2D IMP::algebra::Transformation2D::get_translation | ( | ) | const |
Returns the translation.
Definition at line 96 of file Transformation2D.h.
Perform the transformation on an 2D vector.
Definition at line 60 of file Transformation2D.h.
Transformation2D IMP::algebra::Transformation2D::operator* | ( | const Transformation2D & | tr | ) | const |
compose two transformations
\ note The transformations are composed such that for any vector v (rt1*rt2)*v = rt1*(rt2*v)
Definition at line 67 of file Transformation2D.h.
const Transformation2D& IMP::algebra::Transformation2D::operator*= | ( | const Transformation2D & | o | ) |
See help for operator*.
Definition at line 72 of file Transformation2D.h.
Transformation2D IMP::algebra::Transformation2D::operator/ | ( | const Transformation2D & | b | ) | const |
Compute the transformation d which, when composed with b, gives this one. That is a(x)== d(b(x)) for all x.
Definition at line 79 of file Transformation2D.h.
const Transformation2D& IMP::algebra::Transformation2D::operator/= | ( | const Transformation2D & | o | ) |
See help for operator/.
Definition at line 85 of file Transformation2D.h.
void IMP::algebra::Transformation2D::set_translation | ( | const Vector2D & | v | ) |
Sets the translation.
Definition at line 99 of file Transformation2D.h.