Go to the source code of this file.
Functions | |
void | get4ControlPoints (CDart *ADart, CVertex *AVertexArray, int ADirectInfoAlpha0=-1) |
void | get16ControlPoints (CDart *ADart, CVertex **AVertexArray, int ADirectInfoAlpha0=-1) |
void | get64ControlPoints (CDart *ADart, CVertex ***AVertexArray, int ADirectInfoAlpha0=-1) |
Méthodes permettant de récupérer les plongements de cellules maillées | |
CDart * | getMesh1Dive (CDart *ADart, int ASx, const CVertex **AVertexTable, bool AAlready2MeshedSquare=false) |
CDart * | getMesh2Dive (CDart *ADart, int ASx, int ASy, const CVertex ***AVertexTable, bool AAlready3MeshedCube=false, int AReturnedDart=3) |
void get16ControlPoints | ( | CDart * | ADart, | |
CVertex ** | AVertexArray, | |||
int | ADirectInfoAlpha0 = -1 | |||
) |
Récupère les plongements des 16 sommets appartenant à la grille 3*3 dont ADart est sur la face centrale.
Si ADirectInfoAlpha0 est positif ou nul, les images par alpha0 des brins sont retrouvées à l'aide de ce champ. Cela est utile par exemple pour lisser un carré qui est déjà 1-maillé.
ADart | Un brin de la carte | |
AVertexArray | Un pointeur sur 4*4 sommets | |
ADirectInfoAlpha0 | Un indice de champ directInfo |
void get4ControlPoints | ( | CDart * | ADart, | |
CVertex * | AVertexArray, | |||
int | ADirectInfoAlpha0 = -1 | |||
) |
Récupère les plongements des 4 sommets appartenant à 3 arêtes consécutives de la carte dont ADart est sur l'arête centrale. AVertexArray est donc un paramètre en sortie.
Si ADart est sur une polyligne, AVertexArray[0] reçoit le plongement de alpha10(ADart), AVertexArray[1] celui de ADart, AVertexArray[2] celui de alpha0(ADart) et AVertexArray[2] celui de alpha010(ADart).
Remarque: La manière dont les 2 points de contrôle situés aux extrémités sont calculés dépend de la dimension du maillage sur lequel se trouve ADart. Par exemple, si ADart est sur une grille, AVertexExtremity[0] reçoit le plongement de alpha1210(ADart).
Si ADirectInfoAlpha0 est positif ou nul, les images par alpha0 des brins sont retrouvées à l'aide de ce champ. Cela est utile par exemple pour lisser une arête dont les arêtes adjacentes sont déjà 1-maillées.
ADart | Un brin de la carte | |
AVertexArray | Un pointeur sur 4 sommets | |
ADirectInfoAlpha0 | Un indice de champ directInfo |
void get64ControlPoints | ( | CDart * | ADart, | |
CVertex *** | AVertexArray, | |||
int | ADirectInfoAlpha0 = -1 | |||
) |
Récupère les plongements des 64 sommets appartenant à la grille 3*3*3 dont ADart est sur le cube central.
Si ADirectInfoAlpha0 est positif ou nul, les images par alpha0 des brins sont retrouvées à l'aide de ce champ. Cela est utile par exemple pour lisser un cube qui est déjà 2-maillé.
ADart | Un brin de la carte | |
AVertexArray | Un pointeur sur 4*4*4 sommets | |
ADirectInfoAlpha0 | Un indice de champ directInfo |
CDart* getMesh1Dive | ( | CDart * | ADart, | |
int | ASx, | |||
const CVertex ** | AVertexTable, | |||
bool | AAlready2MeshedSquare = false | |||
) |
Parcourt le maillage 1d en partant de ADart et fait pointer les éléments du tableau AVertexTable sur les plongements des sommets rencontrés.
Si AAlready2MeshedSquare vaut 'faux', le passage d'un sommet à son successeur se fait en utilisant la méthode 'CGMapGenericalpha01', sinon il se fait en utilisant la méthode 'CGMapGenericalpha0121'.
Cette méthode est utile pour récupérer les plongements des contours d'un carré 1 ou 2-maillé. Elle est utilisée par la méthode 'mesh2'.
ADart | Un brin de la carte | |
ASx | Le nombre de subdivisions du maillage 1d | |
AVertexTable | Un tableau de pointeurs sur sommets | |
AAlready2MeshedFace | Un booléen indiquant l'état de l'arête |
CDart* getMesh2Dive | ( | CDart * | ADart, | |
int | ASx, | |||
int | ASy, | |||
const CVertex *** | AVertexTable, | |||
bool | AAlready3MeshedCube = false , |
|||
int | AReturnedDart = 3 | |||
) |
Parcourt le maillage 2d en partant de ADart et fait pointer les éléments du tableau AVertexTable sur les plongements des sommets rencontrés.
Si AAlready3MeshedCube vaut 'faux', le passage d'un sommet à son successeur se fait en utilisant la méthode 'CGMapGenericalpha0121', sinon il se fait en utilisant la méthode 'CGMapGenericalpha012321'.
Cette méthode est utile pour récupérer les plongements des contours d'un cube 2 ou 3-maillé. Elle est utilisée par la méthode 'mesh3'.
2==AReturnedDart AReturnedDart==3 +** --+-- --+-- **+ | | | | | | | | +-- --+-- --+-- --+ | | | | | | | | +** --+-- --+-- **+ ADart AReturnedDart==1
ADart | Un brin de la carte | |
ASx | Le nombre de subdivisions du maillage selon la 1ère dimension | |
ASy | Le nombre de subdivisions du maillage selon la 2ème dimension | |
AVertexTable | Un tableau de pointeurs sur sommets | |
AAlready3MeshedCube | Un booléen indiquant l'état de la face | |
AReturnedDart | Un entier indiquant quel brin retourner |