MAGiC  V5.0
Mailleurs Automatiques de Géometries intégrés à la Cao
CAD4FE_LoopCriteria.h
Aller à la documentation de ce fichier.
1 //####//------------------------------------------------------------
2 //####//------------------------------------------------------------
3 //####// MAGiC
4 //####// Jean Christophe Cuilliere et Vincent FRANCOIS
5 //####// Departement de Genie Mecanique - UQTR
6 //####//------------------------------------------------------------
7 //####// MAGIC est un projet de recherche de l equipe ERICCA
8 //####// du departement de genie mecanique de l Universite du Quebec a Trois Rivieres
9 //####// http://www.uqtr.ca/ericca
10 //####// http://www.uqtr.ca/
11 //####//------------------------------------------------------------
12 //####//------------------------------------------------------------
13 //####//
14 //####// CAD4FE_LoopCriteria.h
15 //####//
16 //####//------------------------------------------------------------
17 //####//------------------------------------------------------------
18 //####// COPYRIGHT 2000-2024
19 //####// jeu 13 jun 2024 11:58:56 EDT
20 //####//------------------------------------------------------------
21 //####//------------------------------------------------------------
22 
23 #ifndef CAD4FE_LoopCriteriaH
24 #define CAD4FE_LoopCriteriaH
25 
26 #include <vector>
27 
28 namespace CAD4FE {
29 
30 class MCAA;
31 class MCFace;
32 class MCEdge;
33 
34 class LoopCriteria {
35 public:
36  LoopCriteria(MCAA * __mcaa, MCFace * __mcFace, std::vector < MCEdge * > __loop, int __nbSegMin = 3);
37  void Update();
38  double DeletionScore();
39  std::vector < MCEdge * > & GetLoop();
40  double EdgeSplitScore(MCEdge * __mcEdge, double __splitPoint[3]);
41  MCFace * GetFace();
42  int GetNbFEMeshSeg();
43  int GetNbFEMeshSegMin();
44 
45 protected:
46  double _score;
49  std::vector < MCEdge * > _loop;
50 
51  int _nbSegMin;
52  int _nbSeg;
53 };
54 
55 }
56 
57 #endif
58 
CAD4FE::LoopCriteria::_nbSegMin
int _nbSegMin
Definition: CAD4FE_LoopCriteria.h:51
CAD4FE::LoopCriteria::_loop
std::vector< MCEdge * > _loop
Definition: CAD4FE_LoopCriteria.h:49
CAD4FE::LoopCriteria::LoopCriteria
LoopCriteria(MCAA *__mcaa, MCFace *__mcFace, std::vector< MCEdge * > __loop, int __nbSegMin=3)
Definition: CAD4FE_LoopCriteria.cpp:49
CAD4FE::MCAA
Definition: CAD4FE_MCAA.h:73
CAD4FE::LoopCriteria::GetNbFEMeshSeg
int GetNbFEMeshSeg()
Definition: CAD4FE_LoopCriteria.cpp:91
CAD4FE::LoopCriteria::Update
void Update()
Definition: CAD4FE_LoopCriteria.cpp:56
CAD4FE::LoopCriteria::_mcFace
MCFace * _mcFace
Definition: CAD4FE_LoopCriteria.h:48
CAD4FE::LoopCriteria::GetFace
MCFace * GetFace()
Definition: CAD4FE_LoopCriteria.cpp:134
CAD4FE::LoopCriteria::_mcaa
MCAA * _mcaa
Definition: CAD4FE_LoopCriteria.h:47
CAD4FE::LoopCriteria::_nbSeg
int _nbSeg
Definition: CAD4FE_LoopCriteria.h:52
CAD4FE::MCEdge
Definition: CAD4FE_MCEdge.h:48
CAD4FE::LoopCriteria
Definition: CAD4FE_LoopCriteria.h:34
CAD4FE::LoopCriteria::GetLoop
std::vector< MCEdge * > & GetLoop()
Definition: CAD4FE_LoopCriteria.cpp:129
CAD4FE
Definition: CAD4FE_ClosestPoint_Segment_MG_ARETE.h:34
CAD4FE::LoopCriteria::DeletionScore
double DeletionScore()
Definition: CAD4FE_LoopCriteria.cpp:124
CAD4FE::LoopCriteria::_score
double _score
Definition: CAD4FE_LoopCriteria.h:46
CAD4FE::MCFace
Definition: CAD4FE_MCFace.h:50
CAD4FE::LoopCriteria::GetNbFEMeshSegMin
int GetNbFEMeshSegMin()
Definition: CAD4FE_LoopCriteria.cpp:96
CAD4FE::LoopCriteria::EdgeSplitScore
double EdgeSplitScore(MCEdge *__mcEdge, double __splitPoint[3])
Definition: CAD4FE_LoopCriteria.cpp:101