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

Go to the source code of this file.

Functions

int duplicateMarkedDarts (int AMarkNumber, CGMapGeneric *AMap=NULL, int ADirectInfoIndex=-1, bool ADuplicateEmbeddings=true, bool A0Sew=true, bool A1Sew=true, bool A2Sew=true, bool A3Sew=true)
 
CDart * duplicateDarts (CDart *ADart, TOrbit AOrbit, CGMapGeneric *AMap=NULL, int ADirectInfoIndex=-1, bool ADuplicateEmbeddings=true)
 
void sewDuplicatedDarts (CCoverage *ACoverage, int AMarkNumber, int ADirectInfoIndex, CGMapGeneric *AMap, bool A0Sew=true, bool A1Sew=true, bool A2Sew=true, bool A3Sew=true)
 
void duplicateEmbeddingsOfDuplicatedDarts (CCoverage *ACoverage, int AMarkInitial, int AMarkDuplicated, int ADirectInfoIndex, CGMapGeneric *AMap)
 

Function Documentation

CDart* duplicateDarts ( CDart *  ADart,
TOrbit  AOrbit,
CGMapGeneric AMap = NULL,
int  ADirectInfoIndex = -1,
bool  ADuplicateEmbeddings = true 
)

Duplique les brins correspondant à l'orbite donnée en dupliquant les plongements et préservant les coutures qui peuvent l'être.

Si ADirectInfoIndex est positif ou nul, chaque brin dupliqué est pointé par le brin à partir duquel il a été créé (par le biais du champ directInfo correspondant).

Parameters
ADartUn brin de la carte
AOrbitUne orbite quelconque
AMapLa carte dans laquelle créer la copie
ADirectInfoIndexUn indice de champ directInfo
ADuplicateEmbeddingsUn booléen indiquant s'il faut ou non dupliquer les plongements des brins
Returns
Le brin dupliqué correspondant à ADart
void duplicateEmbeddingsOfDuplicatedDarts ( CCoverage *  ACoverage,
int  AMarkInitial,
int  AMarkDuplicated,
int  ADirectInfoIndex,
CGMapGeneric AMap 
)
protected

Duplique les plongements des brins dupliqués.

Parameters
ACoverageUn itérateur quelconque
AMarkInitialUn numéro de marque
AMarkDuplicatedUn numéro de marque
ADirectInfoIndexUn indice de champ directInfo
AMapLa carte dans laquelle créer la copie
int duplicateMarkedDarts ( int  AMarkNumber,
CGMapGeneric AMap = NULL,
int  ADirectInfoIndex = -1,
bool  ADuplicateEmbeddings = true,
bool  A0Sew = true,
bool  A1Sew = true,
bool  A2Sew = true,
bool  A3Sew = true 
)

Duplique les brins marqués et respecte dans la mesure du possible les coutures. Si ADirectInfoIndex est positif ou nul, chaque brin dupliqué est pointé par le brin à partir duquel il a été créé (par le biais du champ directInfo correspondant).

Lorsqu'un champ A-Sew vaut 'faux', aucune couture de dimension A-Sew n'est effectuée entre les brins créés.

Parameters
AMarkNumberUn numéro de marque
AMapLa carte dans laquelle créer la copie
ADirectInfoIndexUn indice de champ directInfo
ADuplicateEmbeddingsUn booléen indiquant s'il faut ou non dupliquer les plongements des brins
A-SewDes booléens indiquant quelles coutures doivent être préservées
Returns
Le nombre de brins dupliqués
void sewDuplicatedDarts ( CCoverage *  ACoverage,
int  AMarkNumber,
int  ADirectInfoIndex,
CGMapGeneric AMap,
bool  A0Sew = true,
bool  A1Sew = true,
bool  A2Sew = true,
bool  A3Sew = true 
)
protected

Coud les brins dupliqués entre eux. Les brins traités sont ceux parcourus qui sont marqués avec la marque AMarkNumber.

Parameters
ACoverageUn itérateur quelconque
AMarkNumberUn numéro de marque
ADirectInfoIndexUn indice de champ directInfo
AMapLa carte dans laquelle créer la copie
A-SewDes booléens indiquant quelles coutures doivent être traitées