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 
SQ_INTERFACE::ajouter_dir
void ajouter_dir(OT_VECTEUR_3D vec)
Definition: sq_interface.cpp:150
SQ_INTERFACE::NoCentral
SQ_NOEUD * NoCentral
Definition: sq_interface.h:59
SQ_INTERFACE::change_no_central
void change_no_central(SQ_NOEUD *NoCntrl)
Definition: sq_interface.cpp:143
SQ_INTERFACE::get_dir
OT_VECTEUR_3D get_dir(int i)
Definition: sq_interface.cpp:87
SQ_INTERFACE
Definition: sq_interface.h:27
SQ_INTERFACE::get_nb_aretes
int get_nb_aretes()
Definition: sq_interface.cpp:115
sq_jonction.h
SQ_INTERFACE::ajouter_section
void ajouter_section(std::vector< MG_NOEUD * > Section)
Definition: sq_interface.cpp:157
SQ_NOEUD
Definition: sq_noeud.h:28
SQ_INTERFACE::LstSections
std::vector< std::vector< MG_NOEUD * > > LstSections
Definition: sq_interface.h:62
SQ_INTERFACE::LstAretes
std::vector< TopoDS_Shape > LstAretes
Definition: sq_interface.h:64
SQ_INTERFACE::LstDir
std::vector< OT_VECTEUR_3D > LstDir
Definition: sq_interface.h:61
SQ_BRANCHE
Definition: sq_branche.h:30
SQ_INTERFACE::get_lien_projection
double * get_lien_projection(int i)
Definition: sq_interface.cpp:129
SQ_INTERFACE::get_arete
TopoDS_Shape get_arete(int i)
Definition: sq_interface.cpp:108
SQ_INTERFACE::SQ_INTERFACE
SQ_INTERFACE()
Definition: sq_interface.cpp:24
SQ_INTERFACE::change_arete
void change_arete(int i, TopoDS_Shape Arete)
Definition: sq_interface.cpp:171
SQ_INTERFACE::get_no_central
SQ_NOEUD * get_no_central()
Definition: sq_interface.cpp:73
SQ_INTERFACE::get_nb_sections
int get_nb_sections()
Definition: sq_interface.cpp:101
SQ_INTERFACE::get_jonction
SQ_JONCTION * get_jonction()
Definition: sq_interface.cpp:58
SQ_INTERFACE::get_section
std::vector< MG_NOEUD * > get_section(int i)
Definition: sq_interface.cpp:94
SQ_INTERFACE::ajouter_arete
void ajouter_arete(TopoDS_Shape Arete)
Definition: sq_interface.cpp:164
SQ_INTERFACE::NbBranchements
int NbBranchements
Definition: sq_interface.h:60
SQ_INTERFACE::Branche
SQ_BRANCHE * Branche
Definition: sq_interface.h:58
SQ_INTERFACE::get_nb_branchements
int get_nb_branchements()
Definition: sq_interface.cpp:80
OT_VECTEUR_3D
Definition: ot_mathematique.h:94
SQ_INTERFACE::ajouter_lien
void ajouter_lien(double *P, SQ_INTERFACE *Interface)
Definition: sq_interface.cpp:178
SQ_INTERFACE::get_nb_liens
int get_nb_liens()
Definition: sq_interface.cpp:136
SQ_JONCTION
Definition: sq_jonction.h:30
SQ_INTERFACE::get_lien_interface
SQ_INTERFACE * get_lien_interface(int i)
Definition: sq_interface.cpp:122
SQ_INTERFACE::~SQ_INTERFACE
virtual ~SQ_INTERFACE()
Definition: sq_interface.cpp:52
SQ_INTERFACE::LstLiens
std::vector< std::pair< double *, SQ_INTERFACE * > > LstLiens
Definition: sq_interface.h:63
SQ_INTERFACE::Jonction
SQ_JONCTION * Jonction
Definition: sq_interface.h:57
P
#define P(i, j)
SQ_INTERFACE::get_branche
SQ_BRANCHE * get_branche()
Definition: sq_interface.cpp:65