MAGiC  V5.0
Mailleurs Automatiques de Géometries intégrés à la Cao
sq_interface.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 //####// sq_interface.h
15 //####//
16 //####//------------------------------------------------------------
17 //####//------------------------------------------------------------
18 //####// COPYRIGHT 2000-2024
19 //####// jeu 13 jun 2024 11:58:56 EDT
20 //####//------------------------------------------------------------
21 //####//------------------------------------------------------------
22 #ifndef _SQ_INTERFACE_
23 #define _SQ_INTERFACE_
24 
25 #include "sq_jonction.h"
26 
28 {
29 public:
30  SQ_INTERFACE();
31  SQ_INTERFACE(SQ_JONCTION* Jonc,SQ_BRANCHE* Bran);
33  virtual ~SQ_INTERFACE();
34 
38  int get_nb_branchements();
39  OT_VECTEUR_3D get_dir(int i);
40  std::vector<MG_NOEUD*> get_section(int i);
41  int get_nb_sections();
42  TopoDS_Shape get_arete(int i);
43  int get_nb_aretes();
45  double* get_lien_projection(int i);
46  int get_nb_liens();
47 
48  void change_no_central(SQ_NOEUD* NoCntrl);
49  void ajouter_dir(OT_VECTEUR_3D vec);
50  void ajouter_section(std::vector<MG_NOEUD*> Section);
51  void ajouter_arete(TopoDS_Shape Arete);
52  void change_arete(int i,TopoDS_Shape Arete);
53  void ajouter_lien(double* P,SQ_INTERFACE* Interface);
54 
55 
56 protected:
61  std::vector<OT_VECTEUR_3D> LstDir;
62  std::vector<std::vector<MG_NOEUD*>> LstSections;
63  std::vector<std::pair<double*,SQ_INTERFACE*>> LstLiens;
64  std::vector<TopoDS_Shape> LstAretes;
65 
66 };
67 
68 #endif
69 
void change_arete(int i, TopoDS_Shape Arete)
std::vector< TopoDS_Shape > LstAretes
Definition: sq_interface.h:64
void ajouter_section(std::vector< MG_NOEUD * > Section)
std::vector< OT_VECTEUR_3D > LstDir
Definition: sq_interface.h:61
double * get_lien_projection(int i)
int get_nb_branchements()
OT_VECTEUR_3D get_dir(int i)
int get_nb_sections()
int NbBranchements
Definition: sq_interface.h:60
SQ_JONCTION * get_jonction()
void ajouter_arete(TopoDS_Shape Arete)
SQ_NOEUD * NoCentral
Definition: sq_interface.h:59
std::vector< std::vector< MG_NOEUD * > > LstSections
Definition: sq_interface.h:62
std::vector< MG_NOEUD * > get_section(int i)
SQ_INTERFACE * get_lien_interface(int i)
SQ_JONCTION * Jonction
Definition: sq_interface.h:57
SQ_BRANCHE * Branche
Definition: sq_interface.h:58
SQ_NOEUD * get_no_central()
void ajouter_lien(double *P, SQ_INTERFACE *Interface)
std::vector< std::pair< double *, SQ_INTERFACE * > > LstLiens
Definition: sq_interface.h:63
void change_no_central(SQ_NOEUD *NoCntrl)
TopoDS_Shape get_arete(int i)
void ajouter_dir(OT_VECTEUR_3D vec)
SQ_BRANCHE * get_branche()
virtual ~SQ_INTERFACE()
#define P(i, j)