OETransBase¶
class OETransBase
The OETransBase is the abstract base class which
describes the interface for all of the high-level molecular
transformation objects.
It allows generic application of many manipulations
(such as translation
,
Euler rotation
,
rotation by matrix
,
quaternion rotation
) to conformers.
All of the default transformation currently provided carry out
rigid transformations of molecule positions rather than
conformational modifications. These are provided in the OEMath
namespace described below.
- The following classes derive from this class:
CreateCopy¶
OETransBase *CreateCopy() const =0
It is a virtual const constructor which allows copying of concrete derived objects using a reference to this base class.
Extract¶
void Extract(float *, float *) const =0
void Extract(double *, float *) const =0
void Extract(float *, double *) const =0
void Extract(double *, double *) const =0
GetInverse¶
OETransBase *GetInverse() const =0
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 rows, unsigned int dim) const
void Transform(double *coords, unsigned int rows, unsigned int dim) const
Applies the transformation specified by the OETransBase 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\). Both methods modify the coordinates in place.