OETrans¶
class OETrans
This class represents OETrans.
The OETrans class is a container of high-level
molecular transformations.
It can be used to hold and wrap a series of molecular
transformations, which can be applied to
OEConfBase
objects with a single function call.
The OETrans container keeps its own copies of the
OETransBases
.
Constructors¶
OETrans()
Default constructor.
OETrans(const OETrans &rhs)
Copy constructor.
OETrans(const OETransBase *t)
OETrans(const OETransBase &tr)
Creates a OETrans transformation container and adds a copy of the OETransBase object to the container.
operator=¶
OETrans &operator=(const OETrans &rhs)
Assignment operator that copies the data of the ‘rhs’ OETrans object into the right-hand side OETrans object.
operator+=¶
OETrans &operator+=(const OETrans &rhs)
Makes copies of all OETransBase transformations of the ‘rhs’ OETrans object and adds them to the end of the right-hand side OETrans container.
operator bool¶
operator bool() const
Returns true
, if at least one transformation
(OETransBase) is stored in the
OETrans object.
Compress¶
void Compress()
Extract¶
template<class T, class U>
void Extract(T *rmat, U *trans, bool clobber=true) const
Extract the OETransBase transformation as a rotation matrix, rmat
,
and a translation vector, trans
.
GetInverse¶
bool GetInverse(OETrans &inverse)
GetTransforms¶
OESystem::OEIterBase<OETransBase> *GetTransforms() const
Returns an iterator over the transformations (OETransBase) stored in the OETrans object.
PushBack¶
void PushBack(const OETransBase &t)
Makes a copy of the OETransBase transformation and adds it to the end of the OETrans container.
PushFront¶
void PushFront(const OETransBase &t)
Makes a copy of the OETransBase transformation and adds it to the front of the OETrans container.
Transform¶
void Transform(OEMolBase *mol) const
void Transform(OEConfBase *conf) const
Applies the transformation specified by the OETransBase object to the molecule or conformer passed.
void Transform(float *coords, unsigned int ncoords, unsigned int dim) const
void Transform(double *coords, unsigned int ncoords, unsigned int dim) const
Applies all transformations stored in the OETrans object to the a set of coordinates (‘coords’). The ‘row’ argument specifies the number of coordinates in ‘coords’ array, while the ‘dim’ argument specifies the dimension of the coordinates. These methods presumes that the size of ‘coords’ at least \(rows*dim\).