The Gnome Chemistry Utils  0.14.7
Public Member Functions | List of all members
gcu::Transform3d Class Reference

Handle 3D transformations, such as space group definitions. More...

#include <gcu/transform3d.h>

Inheritance diagram for gcu::Transform3d:
gcu::Matrix gcu::Vector

Public Member Functions

 Transform3d ()
 
 Transform3d (Matrix const &m, Vector const &v)
 
 Transform3d (double s)
 
 Transform3d (Vector row1, Vector row2, Vector row3, Vector translation)
 
 Transform3d (double d[3][3], double t[3])
 
virtual ~Transform3d ()
 
Vector operator* (Vector const &v) const
 
Transform3d operator* (Transform3d const &t) const
 
std::string DescribeAsString () const
 
std::string DescribeAsValues () const
 
void Normalize ()
 

Detailed Description

Handle 3D transformations, such as space group definitions.

Since
version 0.12
See Also
SpaceGroup

Describes a spatial trnasformation obtained by the combination of a symmetry operation and a translation.

Definition at line 42 of file transform3d.h.

Constructor & Destructor Documentation

gcu::Transform3d::Transform3d ( )

The default constructor. Initializes all coordinates to 0.

gcu::Transform3d::Transform3d ( Matrix const &  m,
Vector const &  v 
)
Parameters
ma symmetry operation matrix.
va translation vector.

Constructs a new Transform3d from its symmetry operation matrix and its translation vector.

gcu::Transform3d::Transform3d ( double  s)
Parameters
sa scalar.

Constructs a new Transform3d from a scalar matrix and a null translation vector.

gcu::Transform3d::Transform3d ( Vector  row1,
Vector  row2,
Vector  row3,
Vector  translation 
)
Parameters
row1first matrix row.
row2second matrix row.
row3third matrix row.
translationthe translation vector.

Constructs a new Transform3d from the three rows of its symmetry operation matrix and its translation vector.

gcu::Transform3d::Transform3d ( double  d[3][3],
double  t[3] 
)
Parameters
dthe coefficients of a symmetry operation matrix.
tthe coefficients of a translation vector.

Constructs a new Transform3d from the coefficients of its symmetry operation matrix and its translation vector.

virtual gcu::Transform3d::~Transform3d ( )
virtual

The destructor.

Member Function Documentation

std::string gcu::Transform3d::DescribeAsString ( ) const
Returns
the transform dexcription in CIF convention, such as "x,y,z".
std::string gcu::Transform3d::DescribeAsValues ( ) const
Returns
the transform description in CML convention, limiting to the twelve first values, such as "1.0 0.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0 0.0 1.0 0.0".
void gcu::Transform3d::Normalize ( )

Ensure that the translation vector coordinates are all in the interval [0,1[.

Vector gcu::Transform3d::operator* ( Vector const &  v) const
Parameters
vthe vector to transform.

Transforms a vector (multiply by the symmetry matrix and add the translation vector).

Returns
the transformed vector.
Transform3d gcu::Transform3d::operator* ( Transform3d const &  t) const
Parameters
ta Transform3d.

Combines two Transform3d instances a vector.

Returns
the combination of the two transforms.

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