Go to the source code of this file.
|
virtual CDart * | insertVertex (CDart *ADart) |
|
int | insertVertexOnMarkedEdges (int AMarkNumber) |
|
virtual CDart * | insertEdge (CDart *ADart1, CDart *ADart2) |
|
int | insertEdgeOnMarkedFaces (int AMarkNumber, bool ANoCrossedFace=false, bool ANoTwoEdgesFace=false) |
|
bool | canInsertFace (CDart *ADart, int AMarkNumber, bool ANoCrossedVolume=false, bool ANoTwoEdgesFace=false, bool ANoTwoFacesVolume=false) |
|
virtual CDart * | insertFace (CDart *ADart, int AMarkNumber, bool ANoCrossedVolume=false) |
|
int | insertFaceOnMarkedVolumes (int AMarkNumber, bool ANoCrossedVolume=false, bool ANoTwoEdgesFace=false, bool ANoTwoFacesVolume=false) |
|
bool | turnAroundVertex (CDart *ADart, bool ANoCrossedVolume, int AMarkNumber, CDart *&ANext, bool &ACrossed) |
|
bool canInsertFace |
( |
CDart * |
ADart, |
|
|
int |
AMarkNumber, |
|
|
bool |
ANoCrossedVolume = false , |
|
|
bool |
ANoTwoEdgesFace = false , |
|
|
bool |
ANoTwoFacesVolume = false |
|
) |
| |
Teste s'il est possible d'insérer une face topologique dans un volume. Si ANoCrossedVolume est vrai, au moins un brin de chaque demi-arête du volume (orbite 0) correspondant à la face à créer doit être sélectionné. Si ANoCrossedVolume est faux, au moins un brin de chaque arête du volume (orbite 02) correspondant à la face à créer doit être sélectionné.
- Parameters
-
ADart | Un brin marqué du volume dans lequel insérer la face |
AMarkNumber | Un numéro de marque |
ANoCrossedVolume | Un booléen indiquant s'il faut vérifier qu'on ne va pas créer un volume 'croisé', c'est-à-dire un volume en forme de 8, avec deux faces 3-cousues qui se croisent |
ANoTwoEdgesFace | Un booléen indiquant s'il faut vérifier qu'on ne va pas créer de face fermée composée de seulement deux arêtes |
ANoTwoFacesVolume | Un booléen indiquant s'il faut vérifier qu'on ne va pas créer de volume fermé composé de seulement deux faces |
- Returns
- Un booléen
virtual CDart* insertEdge |
( |
CDart * |
ADart1, |
|
|
CDart * |
ADart2 |
|
) |
| |
|
virtual |
Insère une arête topologique entre les sommets incidents aux brins ADart1 et ADart2.
- Parameters
-
ADart1 | Un pointeur sur un brin |
ADart2 | Un pointeur sur un brin |
- Returns
- Un brin de l'arête topologique insérée
canInsertEdge(ADart1, ADart2)
int insertEdgeOnMarkedFaces |
( |
int |
AMarkNumber, |
|
|
bool |
ANoCrossedFace = false , |
|
|
bool |
ANoTwoEdgesFace = false |
|
) |
| |
Insère une arête sur chaque face dont deux sommets sont sélectionnés, lorsque cela est possible. Si ANoCrossedFace est faux, une arête n'est insérée sur une face que si exactement 2 brins de cette face sont marqués. Si ANoCrossedFace est vrai, une arête n'est insérée sur une face que si 2 sommets de cette face sont marqués (2, 3 ou 4 brins marqués).
- Parameters
-
AMarkNumber | Un numéro de marque |
ANoCrossedFace | Un booléen indiquant s'il faut vérifier qu'on ne va pas créer une face 'croisée', c'est-à-dire une face en forme de 8, avec deux arêtes 2-cousues qui se croisent |
ANoTwoEdgesFace | Un booléen indiquant s'il faut vérifier qu'on ne va pas créer de face fermée composée de seulement deux arêtes |
- Returns
- Le nombre d'arêtes insérées
virtual CDart* insertFace |
( |
CDart * |
ADart, |
|
|
int |
AMarkNumber, |
|
|
bool |
ANoCrossedVolume = false |
|
) |
| |
|
virtual |
Insère une face le long des arêtes sélectionnées du volume donné.
- Parameters
-
ADart | Un brin marqué du volume dans lequel insérer la face |
AMarkNumber | Un numéro de marque |
ANoCrossedVolume | Un booléen indiquant s'il faut vérifier qu'on ne va pas créer un volume 'croisé', c'est-à-dire un volume en forme de 8, avec deux faces 3-cousues qui se croisent |
- Returns
- Un brin de la face créée
canInsertFace(ADart, AMarkNumber)
int insertFaceOnMarkedVolumes |
( |
int |
AMarkNumber, |
|
|
bool |
ANoCrossedVolume = false , |
|
|
bool |
ANoTwoEdgesFace = false , |
|
|
bool |
ANoTwoFacesVolume = false |
|
) |
| |
Insère une face sur chaque volume dont plusieurs arêtes sont sélectionnées, lorsque cela est possible.
- Parameters
-
AMarkNumber | Un numéro de marque |
ANoCrossedVolume | Un booléen indiquant s'il faut vérifier qu'on ne va pas créer un volume 'croisé', c'est-à-dire un volume en forme de 8, avec deux faces 3-cousues qui se croisent |
ANoTwoEdgesFace | Un booléen indiquant s'il faut vérifier qu'on ne va pas créer de face fermée composée de seulement deux arêtes |
ANoTwoFacesVolume | Un booléen indiquant s'il faut vérifier qu'on ne va pas créer de volume fermé composé de seulement deux faces |
- Returns
- Le nombre de faces insérées
virtual CDart* insertVertex |
( |
CDart * |
ADart | ) |
|
|
virtual |
Insère un sommet topologique sur l'arête incidente au brin ADart.
- Parameters
-
ADart | Un pointeur sur un brin |
- Returns
- Un brin du sommet topologique inséré
canInsertVertex(ADart)
int insertVertexOnMarkedEdges |
( |
int |
AMarkNumber | ) |
|
Insère un sommet sur chaque arête dont un brin au moins est marqué, lorsque cela est possible.
- Parameters
-
AMarkNumber | Un numéro de marque |
- Returns
- Le nombre d'insertions effectuées
bool turnAroundVertex |
( |
CDart * |
ADart, |
|
|
bool |
ANoCrossedVolume, |
|
|
int |
AMarkNumber, |
|
|
CDart *& |
ANext, |
|
|
bool & |
ACrossed |
|
) |
| |
|
protected |
Cette méthode est utilisée par les méthodes 'canInsertFace' et 'insertFace'. Elle permet de se déplacer le long des arêtes marquées d'une volume. Partant d'un brin donné elle tourne autour d'un sommet (orbite 12) jusqu'à trouver s'il existe un brin marqué d'une autre arête que celle sur laquelle se trouve ADart. Les deux derniers paramètres sont des paramètres en sortie.
- Parameters
-
ADart | Un brin de la carte, par lequel on est arrivé sur ce sommet |
ANoCrossedVolume | Un booléen indiquant si l'insertion de face doit ne pas entraîner l'apparition d'un volume croisé (voir la méthode 'insertFace') |
AMarkNumber | Un numéro de marque permettant de repérer les brins sélectionnés |
ANext | Un pointeur sur un brin (paramètre en sortie uniquement) |
ACrossed | Un booléen indiquant si le brin ANext est tel que la face à insérer est croisée (paramètre en sortie uniquement) |
- Returns
- Un booléen indiquant si le sommet est valide, c'est-à-dire si au plus de 2 des arêtes qui lui sont incidentes sont sélectionnées