3DCoat Core API
The 3DCoat API documentation.
Loading...
Searching...
No Matches
coat::symm Class Reference

Static Public Member Functions

static symmenable (bool _enable=true)
 Enable the symmetry.
 
static bool enabled ()
 
static symmdisable ()
 disable the symmetry
 
static symmxyz (bool x, bool y, bool z)
 Enable the XYZ-mirror symmetry.
 
static bool is_xyz ()
 check if the XYZ symmetry enabled
 
static bool & x ()
 check x symmetry state
 
static bool & y ()
 check y symmetry state
 
static bool & z ()
 check z symmetry state
 
static symmaxial (int n, bool extraMirror=false, bool stepSymmetry=false)
 Enable the axial symmetry.
 
static bool is_axial ()
 Check if the axial symmetry enabled

 
static int & axialOrder ()
 returns the axial symmetry order if axial or axial mirror symmetry enabled
 
static bool & extraMirror ()
 returns the state of extra mirror, this is valid only tor the axial symmetry
 
static bool & stepSymmetry ()
 returns the state of step symmetry
 
static symmaxialMirror (int n, bool extraMirror=false, bool stepSymmetry=false)
 Enable the axial mirror symmetry.
 
static bool isAxialMirror ()
 Check if the axial mirror symmetry enabled.
 
static symmtranslation (int numX, float stepX, int numY, float stepY, int numZ, float stepZ)
 Enable the translation symmetry.
 
static bool is_translation ()
 Check if the translation symmetry enabled.
 
static int & numX ()
 returns the reference to the number of the x repeats if the translational symmetry used
 
static float & stepX ()
 returns the reference to the x-step if the translational symmetry used
 
static int & numY ()
 returns the reference to the number of the y repeats if the translational symmetry used
 
static float & stepY ()
 returns the reference to the y-step if the translational symmetry used
 
static int & numZ ()
 returns the reference to the number of the z repeats if the translational symmetry used
 
static float & stepZ ()
 returns the reference to the z-step if the translational symmetry used
 
static symmtoGlobalSpace ()
 set the symmetry to be in global space
 
static symmtoLocalSpace ()
 set the symmetry to be in local space
 
static symmtoGeneral ()
 set the symmetry to general case
 
static symmset_start (const vec3 &pos)
 set the central point for the symmetry
 
static vec3start ()
 get the start point reference
 
static symmset_end (const vec3 &pos)
 set the end point for the symmetry axis, calling this function enables the general case of the symmetry
 
static vec3end ()
 the end point reference
 
static symmshowSymmetryPlane (bool show=true)
 Show or hide the symmetry planes.
 
static symmsetCustomSymetryTransforms (list< mat4 > &symmetryTransforms)
 enable the custom symmetry, provide the symmetry transfoms
 
static symmsetCustomSymetryTransforms (pybind11::list &symmetryTransforms)
 enable the custom symmetry, provide the symmetry transfoms
 
static bool isCustomSymmetry ()
 Check if the custom symmetry used.
 
static symmgetCurrentTransforms (list< mat4 > &symmetryTransforms)
 Returns all transforms using the current symmetry state.
 
static std::vector< mat4getCurrentTransforms ()
 Returns all transforms using the current symmetry state.
 
static symmgetCurrentPlanes (list< comms::cPlane > &planes)
 Returns all symmetry planes using the current symmetry state.
 
static std::vector< comms::cPlane > getCurrentPlanes ()
 Returns all symmetry planes using the current symmetry state.
 
static void disableGlobally ()
 Totally disable symmetry, don't forget to enable after all operations!
 
static void enableGlobally ()
 Enable symmetry (preliminary disabled by disableGlobally)
 

Member Function Documentation

◆ axial()

static symm & coat::symm::axial ( int n,
bool extraMirror = false,
bool stepSymmetry = false )
static

Enable the axial symmetry.

Parameters
nthe order of the axial symmetry
extraMirroradd the extra mirror orthogonal to the axis
stepSymmetryenable the step symmetry
Returns
reference

◆ axialMirror()

static symm & coat::symm::axialMirror ( int n,
bool extraMirror = false,
bool stepSymmetry = false )
static

Enable the axial mirror symmetry.

Parameters
nthe order of the symmetry
extraMirrordd the extra mirror orthogonal to the axis
stepSymmetryenable the step symmetry
Returns
the reference

◆ axialOrder()

static int & coat::symm::axialOrder ( )
static

returns the axial symmetry order if axial or axial mirror symmetry enabled

Returns
the reference to the order of the axial symmetry

◆ disable()

static symm & coat::symm::disable ( )
static

disable the symmetry

Returns
reference

◆ enable()

static symm & coat::symm::enable ( bool _enable = true)
static

Enable the symmetry.

Parameters
_enabletrue to enable, false to disable
Returns
reference for the chain-like operations

◆ end()

static vec3 & coat::symm::end ( )
static

the end point reference

Returns
the point reference

◆ extraMirror()

static bool & coat::symm::extraMirror ( )
static

returns the state of extra mirror, this is valid only tor the axial symmetry

Returns
the reference to the extra mirror state

◆ getCurrentPlanes() [1/2]

static std::vector< comms::cPlane > coat::symm::getCurrentPlanes ( )
static

Returns all symmetry planes using the current symmetry state.

Returns
the resulting list of planes (coat.plane)

◆ getCurrentPlanes() [2/2]

static symm & coat::symm::getCurrentPlanes ( list< comms::cPlane > & planes)
static

Returns all symmetry planes using the current symmetry state.

Parameters
planesthe resulting list

◆ getCurrentTransforms() [1/2]

static std::vector< mat4 > coat::symm::getCurrentTransforms ( )
static

Returns all transforms using the current symmetry state.

Returns
the resulting list of coat.mat4

◆ getCurrentTransforms() [2/2]

static symm & coat::symm::getCurrentTransforms ( list< mat4 > & symmetryTransforms)
static

Returns all transforms using the current symmetry state.

Parameters
symmetryTransformsthe resulting list

◆ is_axial()

static bool coat::symm::is_axial ( )
static

Check if the axial symmetry enabled

Returns
true if the axial symmetry enabled

◆ is_translation()

static bool coat::symm::is_translation ( )
static

Check if the translation symmetry enabled.

Returns
the state

◆ is_xyz()

static bool coat::symm::is_xyz ( )
static

check if the XYZ symmetry enabled

Returns
true if this type of the symmetry active

◆ isAxialMirror()

static bool coat::symm::isAxialMirror ( )
static

Check if the axial mirror symmetry enabled.

Returns
true if the axial mirror symmetry enabled

◆ isCustomSymmetry()

static bool coat::symm::isCustomSymmetry ( )
static

Check if the custom symmetry used.

Returns
true if the custom symmetry enabled

◆ numX()

static int & coat::symm::numX ( )
static

returns the reference to the number of the x repeats if the translational symmetry used

Returns
the bool reference

◆ numY()

static int & coat::symm::numY ( )
static

returns the reference to the number of the y repeats if the translational symmetry used

Returns
the bool reference

◆ numZ()

static int & coat::symm::numZ ( )
static

returns the reference to the number of the z repeats if the translational symmetry used

Returns
the bool reference

◆ set_end()

static symm & coat::symm::set_end ( const vec3 & pos)
static

set the end point for the symmetry axis, calling this function enables the general case of the symmetry

Parameters
posthe position
Returns
the reference

◆ set_start()

static symm & coat::symm::set_start ( const vec3 & pos)
static

set the central point for the symmetry

Parameters
posthe position (in local or global space, see the localSpace() or globalSpace())
Returns
the reference

◆ setCustomSymetryTransforms() [1/2]

static symm & coat::symm::setCustomSymetryTransforms ( list< mat4 > & symmetryTransforms)
static

enable the custom symmetry, provide the symmetry transfoms

Parameters
symmetryTransformsthe list of additional transforms that will be applied to the any user action
Returns
the reference

◆ setCustomSymetryTransforms() [2/2]

static symm & coat::symm::setCustomSymetryTransforms ( pybind11::list & symmetryTransforms)
static

enable the custom symmetry, provide the symmetry transfoms

Parameters
symmetryTransformsthe list of additional transforms (list of coat.mat4) that will be applied to the any user action
Returns
the reference

◆ showSymmetryPlane()

static symm & coat::symm::showSymmetryPlane ( bool show = true)
static

Show or hide the symmetry planes.

Parameters
showset true to show
Returns
the reference

◆ start()

static vec3 & coat::symm::start ( )
static

get the start point reference

Returns
the point reference

◆ stepSymmetry()

static bool & coat::symm::stepSymmetry ( )
static

returns the state of step symmetry

Returns
the reference to the step symmetry state

◆ stepX()

static float & coat::symm::stepX ( )
static

returns the reference to the x-step if the translational symmetry used

Returns
the value reference

◆ stepY()

static float & coat::symm::stepY ( )
static

returns the reference to the y-step if the translational symmetry used

Returns
the value reference

◆ stepZ()

static float & coat::symm::stepZ ( )
static

returns the reference to the z-step if the translational symmetry used

Returns
the value reference

◆ toGeneral()

static symm & coat::symm::toGeneral ( )
static

set the symmetry to general case

Returns
the reference

◆ toGlobalSpace()

static symm & coat::symm::toGlobalSpace ( )
static

set the symmetry to be in global space

Returns
the reference

◆ toLocalSpace()

static symm & coat::symm::toLocalSpace ( )
static

set the symmetry to be in local space

Returns
the reference

◆ translation()

static symm & coat::symm::translation ( int numX,
float stepX,
int numY,
float stepY,
int numZ,
float stepZ )
static

Enable the translation symmetry.

Parameters
numXnumber of x-repeats
stepXthe step of the x-repeat
numYnumber of y-repeats
stepYthe step of the y-repeat
numZnumber of z-repeats
stepZthe step of the z-repeat
Returns
the reference

◆ x()

static bool & coat::symm::x ( )
static

check x symmetry state

Returns
reference to the x symmetry state

◆ xyz()

static symm & coat::symm::xyz ( bool x,
bool y,
bool z )
static

Enable the XYZ-mirror symmetry.

Parameters
xtrue to enable x-symmetry, false to disable
ytrue to enable y-symmetry, false to disable
ztrue to enable z-symmetry, false to disable
Returns
reference

◆ y()

static bool & coat::symm::y ( )
static

check y symmetry state

Returns
reference to the y symmetry state

◆ z()

static bool & coat::symm::z ( )
static

check z symmetry state

Returns
reference to the z symmetry state

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