Antiprism 0.23
Public Member Functions

sch_sym_autos Class Reference

Class for a set of automorphisms: transformations maintaining symmetry alignment. More...

#include <symmetry.h>

List of all members.

Public Member Functions

 sch_sym_autos ()
 Constructer.
 sch_sym_autos (const sch_sym &sym)
 Constructer.
bool is_set () const
 Check if has been set.
bool set_fixed_type (int type, char *errmsg=0)
 Set fixed transformation type.
bool set_rot_principal (double rot_ang, char *errmsg=0)
 Set rotation about principal axis.
bool set_rot_full (double rot_x, double rot_y, double rot_z, char *errmsg=0)
 Set rotation about origin.
bool set_transl_principal (double transl0, char *errmsg=0)
 Set translation distance along principal direction.
bool set_transl_plane (double transl0, double transl1, char *errmsg=0)
 Set translation distances along directions which span a plane.
bool set_transl_space (double transl0, double transl1, double transl2, char *errmsg=0)
 Set translation distances along directions which span all space.
const vector< mat3d > & get_fixed () const
 Get fixed realignment transformations.
void set_fixed (const t_set &fixed)
 Set fixed realignment transformations.
int num_free_rots () const
 Number of free rotation variables.
int num_free_transls () const
 Number of free translation variables.
mat3d get_realignment () const
 Get realignment transformtion from current settings.
bool set_realignment (const char *realign, char *errmsg=0)
 Set and get realignment transformation from a string of numbers.

Detailed Description

Class for a set of automorphisms: transformations maintaining symmetry alignment.


Constructor & Destructor Documentation

sch_sym_autos::sch_sym_autos ( const sch_sym sym)

Constructer.

Parameters:
symsymmetry group to transform

Member Function Documentation

const vector<mat3d>& sch_sym_autos::get_fixed ( ) const [inline]

Get fixed realignment transformations.

Returns:
The fixed realigment transformations.
mat3d sch_sym_autos::get_realignment ( ) const

Get realignment transformtion from current settings.

Returns:
Realignment transformation
int sch_sym_autos::num_free_rots ( ) const

Number of free rotation variables.

Returns:
Number of free rotation variables (0, 1 or 3).
int sch_sym_autos::num_free_transls ( ) const

Number of free translation variables.

Returns:
Number of free translation variables (0 to 3).
void sch_sym_autos::set_fixed ( const t_set fixed)

Set fixed realignment transformations.

Parameters:
fixedthe fixed realigment transformations.
bool sch_sym_autos::set_fixed_type ( int  type,
char *  errmsg = 0 
)

Set fixed transformation type.

Parameters:
typethe index number of the type (0 always the identity)
errmsgan array at least MSG_SZ chars long to return any error message.
Returns:
true if the fixed transformation index is valid, otherwise false and the error is detailed in errmsg.
bool sch_sym_autos::set_realignment ( const char *  realign,
char *  errmsg = 0 
)

Set and get realignment transformation from a string of numbers.

Parameters:
realignfixed type number and free variable list as colon separated string
errmsgan array at least MSG_SZ chars long to return any error message.
Returns:
true if the realignment was valid, otherwise false and the error is detailed in errmsg.
bool sch_sym_autos::set_rot_full ( double  rot_x,
double  rot_y,
double  rot_z,
char *  errmsg = 0 
)

Set rotation about origin.

Parameters:
rot_xrotation about x-axis, in degrees
rot_yrotation about y-axis, in degrees
rot_zrotation about z-axis, in degrees
errmsgan array at least MSG_SZ chars long to return any error message.
Returns:
true if the free variable could be set, otherwise false and the error is detailed in errmsg.
bool sch_sym_autos::set_rot_principal ( double  rot_ang,
char *  errmsg = 0 
)

Set rotation about principal axis.

Parameters:
rot_angrotation angle about prinicipal axis, in degrees
errmsgan array at least MSG_SZ chars long to return any error message.
Returns:
true if the free variable could be set, otherwise false and the error is detailed in errmsg.
bool sch_sym_autos::set_transl_plane ( double  transl0,
double  transl1,
char *  errmsg = 0 
)

Set translation distances along directions which span a plane.

Parameters:
transl0first translation distance
transl1second translation distance
errmsgan array at least MSG_SZ chars long to return any error message.
Returns:
true if the free variable could be set, otherwise false and the error is detailed in errmsg.
bool sch_sym_autos::set_transl_principal ( double  transl0,
char *  errmsg = 0 
)

Set translation distance along principal direction.

Parameters:
transl0translation distance
errmsgan array at least MSG_SZ chars long to return any error message.
Returns:
true if the free variable could be set, otherwise false and the error is detailed in errmsg.
bool sch_sym_autos::set_transl_space ( double  transl0,
double  transl1,
double  transl2,
char *  errmsg = 0 
)

Set translation distances along directions which span all space.

Parameters:
transl0first translation distance
transl1second translation distance
transl2third translation distance
errmsgan array at least MSG_SZ chars long to return any error message.
Returns:
true if the free variable could be set, otherwise false and the error is detailed in errmsg.

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