#include <SubdivScheme.h>
Public Member Functions | |
| SubdivScheme (int CutOnU, int CutOnV, int CutOnW, int NbPntsU, int NbPntsV, int NbPntsW, SSMatrix *Transformations) | |
| ~SubdivScheme () | |
| void | Destruction () |
| void | Copy (SubdivScheme &S) |
| void | Desactivate (int NumTransfoU, int NumTransfoV, int NumTransfoW) |
| void | Activate (int NumTransfoU, int NumTransfoV, int NumTransfoW) |
| void | Rotation (int NumRotU, int NumRotV, int NumRotW, int axis) |
| void | Symetry (int NumRotU, int NumRotV, int NumRotW, int axis) |
| void | SaveToFile (FILE *SaveFile) |
| void | LoadFromFile (FILE *SaveFile, int &UCnx1, int &UCnx2, int &VCnx1, int &VCnx2, int &WCnx1, int &WCnx2) |
Public Attributes | |
| int | _CutOnU |
| int | _CutOnV |
| int | _CutOnW |
| int | _NbPntsU |
| int | _NbPntsV |
| int | _NbPntsW |
| SSMatrix *** | _Transfos |
| bool *** | _IsActivated |
Stores data defining a subdivision scheme : dimension of the patches it is applied to and transformation matrices
| SubdivScheme::SubdivScheme | ( | int | CutOnU, | |
| int | CutOnV, | |||
| int | CutOnW, | |||
| int | NbPntsU, | |||
| int | NbPntsV, | |||
| int | NbPntsW, | |||
| SSMatrix * | Transformations | |||
| ) |
basic constructor, all class attributes are given in argument
| SubdivScheme::~SubdivScheme | ( | ) | [inline] |
basic destructor : attribute arrays are deleted
| void SubdivScheme::Activate | ( | int | NumTransfoU, | |
| int | NumTransfoV, | |||
| int | NumTransfoW | |||
| ) |
Activates a particular transformation
| void SubdivScheme::Copy | ( | SubdivScheme & | S | ) |
Deletes my data and replaces it with duplicates of another SubdivScheme's Data
| void SubdivScheme::Desactivate | ( | int | NumTransfoU, | |
| int | NumTransfoV, | |||
| int | NumTransfoW | |||
| ) |
Deactivates a particular transformation
| void SubdivScheme::Destruction | ( | ) |
Destroys allocated arrays
| void SubdivScheme::LoadFromFile | ( | FILE * | SaveFile, | |
| int & | UCnx1, | |||
| int & | UCnx2, | |||
| int & | VCnx1, | |||
| int & | VCnx2, | |||
| int & | WCnx1, | |||
| int & | WCnx2 | |||
| ) |
Loading subdivision schemes from .sub files
| void SubdivScheme::Rotation | ( | int | NumRotU, | |
| int | NumRotV, | |||
| int | NumRotW, | |||
| int | axis | |||
| ) |
Rotates a particular transformation in the UVW space around axis :
1 : U, 2 : V, 3 : W
of a 90° angle. More details in the SubdivSchemeModifier description.
| void SubdivScheme::SaveToFile | ( | FILE * | SaveFile | ) |
Saving subdivision schemes to .sub files
| void SubdivScheme::Symetry | ( | int | NumRotU, | |
| int | NumRotV, | |||
| int | NumRotW, | |||
| int | axis | |||
| ) |
Rerforms a symetry a particular transformation in the UVW space across normal plane :
1 : U, 2 : V, 3 : W
of a 90° angle. More details in the SubdivSchemeModifier description.
How many new patches are created on the U dimension after a subdivision ?
How many new patches are created on the V dimension after a subdivision ?
How many new patches are created on the W dimension after a subdivision ?
| bool*** SubdivScheme::_IsActivated |
Array used to activate or desactivate transformations (transformation will or will not take part in the subdivision)
What is the dimension of the patches I subdivide on the U dimension ?
What is the dimension of the patches I subdivide on the V dimension ?
_CutOnU * _CutOnV * _CutOnW array containing transformation matrices
1.4.7