Moka kernel
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
gmv-plating.hh File Reference

Go to the source code of this file.

Functions

bool canPlate (CDart *ADart1, CDart *ADart2)
 
int getPlateDimension (CDart *ADart1, CDart *ADart2)
 
void plate (CDart *ADart1, CDart *ADart2, int ADimbool, bool ARotateCells=true, bool AScaleCells=true, bool ATranslateCells=true)
 
bool intuitivePlate (CDart *ADart1, CDart *ADart2, bool ARotateCells=true, bool AScaleCells=true, bool ATranslateCells=true)
 
void borderPlate (CDart *ADart1, CDart *ADart2, int ADim, bool ARotateCells=true, bool AScaleCells=true, bool ATranslateCells=true)
 

Function Documentation

void borderPlate ( CDart *  ADart1,
CDart *  ADart2,
int  ADim,
bool  ARotateCells = true,
bool  AScaleCells = true,
bool  ATranslateCells = true 
)

Effectue un placage des bords de dimension ADim incidents aux brins ADart1 et ADart2. Tout comme pour la méthode 'plate', c'est le bord incident à ADart1 qui est déplacé vers le bord incident à ADart2.

Parameters
ADart1Un brin de la carte
ADart2Un brin de la carte
ADimUne dimension
ARotateCellsUn booléen pour modifier ou non l'orientation
AScaleCellsUn booléen pour modifier ou non la taille
ATranslateCellsUn booléen pour modifier ou non la position
bool canPlate ( CDart *  ADart1,
CDart *  ADart2 
)

Teste si les deux cellules incidentes aux brins passés en paramètres peuvent être plaquées (c'est le cas si elles ne sont pas dans la même composante connexe).

Parameters
ADart1Un brin de la carte
ADart2Un brin de la carte
Unbooléen indiquant si les deux cellules incidentes aux brins donnés peuvent être plaquées
int getPlateDimension ( CDart *  ADart1,
CDart *  ADart2 
)

Calcule la dimension maximum des cellules incidentes aux brins donnés qui peuvent être plaquées, en tenant compte de l'état des coutures de chacun de ces brins (par exemple, pour faire un placage de faces, il faut qu'au moins un des brins soit 3-cousu). Si le placage est impossible, la valeur -1 est retournée, sinon la valeur retournée vaut 0, 1 ou 2.

Parameters
ADart1Un brin de la carte
ADart2Un brin de la carte
Returns
Un entier indiquant la dimension des cellules incidentes aux brins donnés pouvant être plaquées
bool intuitivePlate ( CDart *  ADart1,
CDart *  ADart2,
bool  ARotateCells = true,
bool  AScaleCells = true,
bool  ATranslateCells = true 
)

Effectue un placage comme la méthode 'plate'. La dimension du placage est déterminée par la méthode 'getPlateDimension'.

Parameters
ADart1Un brin de la carte
ADart2Un brin de la carte
ARotateCellsUn booléen pour modifier ou non l'orientation
AScaleCellsUn booléen pour modifier ou non la taille
ATranslateCellsUn booléen pour modifier ou non la position
Returns
true si le placage alpha été possible
void plate ( CDart *  ADart1,
CDart *  ADart2,
int  ADimbool,
bool  ARotateCells = true,
bool  AScaleCells = true,
bool  ATranslateCells = true 
)

Plaque les cellules de dimension ADim incidentes aux brins ADart1 et ADart2. La cellule incidentes à ADart1 voit son plongement modifié pour se plaquer à la cellule incidente à ADart2. Le plongement de la cellule incidente à ADart2 n'est pas modifié. Le placage tient compte de l'état des booléen 'orientation', 'scale' et 'position'.

Parameters
ADart1Un brin de la carte
ADart2Un brin de la carte
ADimUne dimension
ARotateCellsUn booléen pour modifier ou non l'orientation
AScaleCellsUn booléen pour modifier ou non la taille
ATranslateCellsUn booléen pour modifier ou non la position