#include <corefine-2d-sweeping.hh>
CGMapVertex * | FMap |
CCorefineSegmentsSweeping (CGMapVertex *AMap) | |
virtual | ~CCorefineSegmentsSweeping () |
void | corefine (CDart *ADart1, CDart *ADart2, const CVertex &ANormalVector) |
VERT_IT | findElementInSweepingSet (VERT_SET &ASweepingSet, CDart *AElement) |
void | manageEdgesIntersection (CDart *ADart1, CDart *ADart2, LEX_SET &AEventSet, const CDartLexicoCompare &ALexComparator, VERT_SET &ASweepingSet, int AExtremity1, int AMesh1, int ADirectVertex, const CVertex &ANormalVector) |
Definition at line 45 of file corefine-2d-sweeping.hh.
CCorefineSegmentsSweeping::CCorefineSegmentsSweeping | ( | CGMapVertex * | AMap | ) |
CCorefineSegmentsSweeping::~CCorefineSegmentsSweeping | ( | ) | [virtual] |
void CCorefineSegmentsSweeping::corefine | ( | CDart * | ADart1, | |
CDart * | ADart2, | |||
const CVertex & | ANormalVector | |||
) |
Coraffine par balayage les maillages 2d incidents à ADart1 et ADart2.
ADart1 | Un brin du maillage bleu | |
ADart2 | Un brin du maillage rouge | |
ANormalVector | Un vecteur normal au plan des maillages |
Definition at line 53 of file corefine-2d-sweeping.cc.
VERT_IT CCorefineSegmentsSweeping::findElementInSweepingSet | ( | VERT_SET & | ASweepingSet, | |
CDart * | AElement | |||
) | [protected] |
Permet de retrouver l'élément AElement dans l'ensemble de balayage. Si l'ensemble n'est pas ordonné (à cause des erreurs numériques), la méthode scrute l'ensemble tout entier pour retrouver AElement.
ASweepingSet | L'ensemble de balayage | |
AElement | Un brin de l'ensemble de balayage |
Definition at line 335 of file corefine-2d-sweeping.cc.
void CCorefineSegmentsSweeping::manageEdgesIntersection | ( | CDart * | ADart1, | |
CDart * | ADart2, | |||
LEX_SET & | AEventSet, | |||
const CDartLexicoCompare & | ALexComparator, | |||
VERT_SET & | ASweepingSet, | |||
int | AExtremity1, | |||
int | AMesh1, | |||
int | ADirectVertex, | |||
const CVertex & | ANormalVector | |||
) | [protected] |
Gère l'intersection entre 2 arêtes lors du co-raffinement 2D par balayage. Si les deux arêtes se coupent, le point d'intersection est inséré mais les deux maillages ne sont pas "joints". Les nouveaux évènements (extrémités entrantes et sortantes créées) sont insérés dans l'ensemble AEventSet. Les marques AExtremity1 et AMesh1 sont positionnées correctement sur les brins créés. Les champs directInfo[ADirectVertex] sont eux-aussi initialisés. Les coordonnées des points d'intersection sont déterminées par la méthode 'CGeometrygetSegmentsIntersection'.
ADart1 | Un brin entrant de la première arête | |
ADart2 | Un brin entrant de la deuxième arête | |
AEventSet | L'ensemble des extrémités non encore traitées | |
ALexComparator | Un comparateur de brins pour le tri lexicographique | |
ASweepingSet | L'ensemble de balayage | |
AMesh1 | Un numéro de marque | |
AExtremity1 | Un numéro de marque | |
ADirectVertex | Un indice de champ directInfo | |
ANormalVector | Un vecteur normal au plan de co-raffinement |
Definition at line 363 of file corefine-2d-sweeping.cc.
Definition at line 111 of file corefine-2d-sweeping.hh.