IMP Reference Guide
2.10.0
The Integrative Modeling Platform
|
Simple 3D transformation class. More...
#include <IMP/algebra/Transformation3D.h>
Simple 3D transformation class.
The rotation is applied first, and then the point is translated.
Definition at line 31 of file Transformation3D.h.
Public Member Functions | |
Transformation3D () | |
Default construct (makes an invalid transformation) More... | |
Transformation3D (const Rotation3D &r, const Vector3D &t=Vector3D(0, 0, 0)) | |
Basic constructor. More... | |
Transformation3D (const Vector3D &t) | |
Construct a transformation with an identity rotation. More... | |
Transformation3D | get_inverse () const |
bool | get_is_valid () const |
const Rotation3D & | get_rotation () const |
Return the rotation associated with this transformation. More... | |
Vector3D | get_transformed (const Vector3D &o) const |
Transform. More... | |
const Vector3D & | get_translation () const |
Return the translation vector associated with this transformation. More... | |
Vector3D | operator* (const Vector3D &v) const |
Apply transformation (rotate and then translate) More... | |
Transformation3D | operator* (const Transformation3D &tr) const |
const Transformation3D & | operator*= (const Transformation3D &o) |
Transformation3D | operator/ (const Transformation3D &b) const |
Compute the transformation which, when composed with b, gives *this. More... | |
const Transformation3D & | operator/= (const Transformation3D &o) |
void | show (std::ostream &out=std::cout) const |
IMP::algebra::Transformation3D::Transformation3D | ( | ) |
Default construct (makes an invalid transformation)
Definition at line 35 of file Transformation3D.h.
IMP::algebra::Transformation3D::Transformation3D | ( | const Rotation3D & | r, |
const Vector3D & | t = Vector3D(0, 0, 0) |
||
) |
Basic constructor.
Definition at line 37 of file Transformation3D.h.
IMP::algebra::Transformation3D::Transformation3D | ( | const Vector3D & | t | ) |
Construct a transformation with an identity rotation.
Definition at line 40 of file Transformation3D.h.
bool IMP::algebra::Transformation3D::get_is_valid | ( | ) | const |
Definition at line 89 of file Transformation3D.h.
const Rotation3D& IMP::algebra::Transformation3D::get_rotation | ( | ) | const |
Return the rotation associated with this transformation.
Definition at line 74 of file Transformation3D.h.
Transform.
Definition at line 44 of file Transformation3D.h.
const Vector3D& IMP::algebra::Transformation3D::get_translation | ( | ) | const |
Return the translation vector associated with this transformation.
Definition at line 77 of file Transformation3D.h.
Apply transformation (rotate and then translate)
Definition at line 48 of file Transformation3D.h.
Transformation3D IMP::algebra::Transformation3D::operator* | ( | const Transformation3D & | tr | ) | const |
Compose two rigid transformation such that for any vector v (rt1*rt2)*v = rt1*(rt2*v)
Definition at line 51 of file Transformation3D.h.
Transformation3D IMP::algebra::Transformation3D::operator/ | ( | const Transformation3D & | b | ) | const |
Compute the transformation which, when composed with b, gives *this.
That is a(x)== d(b(x)) for all x.
For consistency, this should probably have a nice name, but I don't know what name to give it.
Definition at line 64 of file Transformation3D.h.