Open Babel  3.0
Public Member Functions | Private Types | Private Member Functions | Static Private Member Functions | List of all members
transform3d Class Reference

#include <openbabel/math/transform3d.h>

Inheritance diagram for transform3d:
matrix3x3 vector3

Public Member Functions

 transform3d (void)
 
 transform3d (const matrix3x3 &m, const vector3 &v)
 
 transform3d (double s)
 
 transform3d (vector3 row1, vector3 row2, vector3 row3, vector3 translation)
 
 transform3d (double d[3][3], double t[3])
 
vector3 operator* (const vector3 &) const
 
transform3d operator* (const transform3d &) const
 
std::string DescribeAsString () const
 
std::string DescribeAsValues () const
 
void Normalize ()
 

Private Types

typedef double * iterator
 
typedef const double * const_iterator
 
typedef std::ptrdiff_t difference_type
 

Private Member Functions

void GetArray (double *m)
 
const double & operator() (int row, int column) const
 
double & operator() (int row, int column)
 
matrix3x3 inverse (void) const
 
matrix3x3 transpose (void) const
 
double determinant () const
 
bool isSymmetric (void) const
 
bool isOrthogonal (void) const
 
bool isDiagonal (void) const
 
bool isUnitMatrix (void) const
 
double Get (int row, int column) const
 
void Set (int row, int column, double v)
 
void SetColumn (int column, const vector3 &v)
 
void SetRow (int row, const vector3 &v)
 
vector3 GetColumn (unsigned int col) const
 
vector3 GetRow (unsigned int row) const
 
matrix3x3operator*= (const double &c)
 
matrix3x3operator/= (const double &c)
 
void SetupRotMat (double x, double y, double z)
 
void PlaneReflection (const vector3 &norm)
 
void RotAboutAxisByAngle (const vector3 &axis, const double angle)
 
void FillOrth (double alpha, double beta, double gamma, double a, double b, double c)
 
matrix3x3 findEigenvectorsIfSymmetric (vector3 &eigenvals) const
 
iterator begin ()
 
const_iterator begin () const
 
iterator end ()
 
const_iterator end () const
 
void Set (const double inX, const double inY, const double inZ)
 
void Set (const double *c)
 
void SetX (const double inX)
 
void SetY (const double inY)
 
void SetZ (const double inZ)
 
double GetX () const
 
double GetY () const
 
double GetZ () const
 
void Get (double *c)
 
double operator[] (unsigned int i) const
 
const double * AsArray () const
 
vector3operator+= (const vector3 &v)
 
vector3operator+= (const double *f)
 
vector3operator-= (const vector3 &v)
 
vector3operator-= (const double *f)
 
vector3operator*= (const double &c)
 
vector3operator*= (const matrix3x3 &)
 
vector3operator/= (const double &c)
 
void randomUnitVector ()
 
vector3normalize ()
 
bool CanBeNormalized () const
 
double length_2 () const
 
double length () const
 
const double & x () const
 
double & x ()
 
const double & y () const
 
double & y ()
 
const double & z () const
 
double & z ()
 
int operator== (const vector3 &) const
 
int operator!= (const vector3 &other) const
 
bool IsApprox (const vector3 &other, const double &precision) const
 
double distSq (const vector3 &vv) const
 
bool createOrthoVector (vector3 &v) const
 

Static Private Member Functions

static void jacobi (unsigned int n, double *a, double *d, double *v)
 

Detailed Description

Handle 3D transformations, such as space group definitions.

Since
version 2.2
See also
SpaceGroup

Constructor & Destructor Documentation

◆ transform3d() [1/5]

transform3d ( void  )
inline

◆ transform3d() [2/5]

transform3d ( const matrix3x3 m,
const vector3 v 
)
inline

◆ transform3d() [3/5]

transform3d ( double  s)
inline

◆ transform3d() [4/5]

transform3d ( vector3  row1,
vector3  row2,
vector3  row3,
vector3  translation 
)
inline

Constructs a matrix from row vectors.

◆ transform3d() [5/5]

transform3d ( double  d[3][3],
double  t[3] 
)
inline

Constructs a matrix from a 3x3-array of doubles.

The first index represents the row, the second index the column

Member Function Documentation

◆ operator*() [1/2]

vector3 operator* ( const vector3 v) const

◆ operator*() [2/2]

transform3d operator* ( const transform3d t) const

◆ DescribeAsString()

string DescribeAsString ( ) const

◆ DescribeAsValues()

string DescribeAsValues ( ) const

◆ Normalize()

void Normalize ( )

The documentation for this class was generated from the following files: