MAGiC  V5.0
Mailleurs Automatiques de Géometries intégrés à la Cao
mstruct_groupe_forme.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 //####// mstruct_groupe_forme.h
15 //####//
16 //####//------------------------------------------------------------
17 //####//------------------------------------------------------------
18 //####// COPYRIGHT 2000-2024
19 //####// jeu 13 jun 2024 11:58:57 EDT
20 //####//------------------------------------------------------------
21 //####//------------------------------------------------------------
22 #ifndef _MSTRUCT_GROUPE_FORME_
23 #define _MSTRUCT_GROUPE_FORME_
24 #include "tpl_map_entite.h"
25 #include <sstream>
26 #include <string>
27 #include <fstream>
28 #include <iostream>
29 #include <iomanip>
30 #include "mg_volume.h"
31 class MG_CG_FORME;
32 class MG_CG_MODELE;
33 
34 
36 {
37 public:
38  GROUPE_FORME(void);
39  GROUPE_FORME(std::string nom);
41  ~GROUPE_FORME(void);
42  std::string get_nom(void);
44  int ajouter_donnee_forme(MG_CG_FORME* mgcg_forme,std::string donnee);
45  long get_nb_donnee_forme(MG_CG_FORME* mgcg_forme);
46  std::string get_premiere_donnee_forme(MG_CG_FORME* mgcg_forme,std::multimap<long,std::string>::iterator &it);
47  std::string get_suivante_donnee_forme(MG_CG_FORME* mgcg_forme,std::multimap<long,std::string>::iterator &it);
48 
49  int ajouter_id_forme_ini(MG_CG_FORME* mgcg_forme,long id);
50  int ajouter_centre_forme(MG_CG_FORME* mgcg_forme, double *centre_xyz);
51  int ajouter_extremite_forme(MG_CG_FORME* mgcg_forme, double *extremite_xyz);
52  int ajouter_position_relative(MG_CG_FORME* mgcg_forme, std::string str);
53  int ajouter_axe_forme(MG_CG_FORME* mgcg_forme,double *axe_xyz);
54  int ajouter_rayon_forme(MG_CG_FORME* mgcg_forme, double rayon);
55  int ajouter_longueur_forme(MG_CG_FORME* mgcg_forme, double longueur);
56 
57  int get_id_forme_ini(MG_CG_FORME* mgcg_forme,long &id);
58  int get_centre_forme(MG_CG_FORME* mgcg_forme, double *centre_xyz);
59  int get_extremite_forme(MG_CG_FORME* mgcg_forme, double *extremite_xyz);
60  int get_position_relative(MG_CG_FORME* mgcg_forme, std::string &str);
61  int get_axe_forme(MG_CG_FORME* mgcg_forme,double *axe_xyz);
62  int get_rayon_forme(MG_CG_FORME* mgcg_forme, double &rayon);
63  int get_longueur_forme(MG_CG_FORME* mgcg_forme, double &longueur);
64 
66  void exporter(std::ofstream &f);
67  void importer(std::ifstream &f,MG_CG_MODELE* mgcg_modele);
68 protected:
69  std::string m_nom;
71  std::multimap<long,std::string> m_map_donnees_forme;
72 };
73 
74 
75 #endif
GROUPE_FORME::get_nom
std::string get_nom(void)
Definition: mstruct_groupe_forme.cpp:373
GROUPE_FORME::m_nom
std::string m_nom
Definition: mstruct_groupe_forme.h:69
GROUPE_FORME::get_extremite_forme
int get_extremite_forme(MG_CG_FORME *mgcg_forme, double *extremite_xyz)
Definition: mstruct_groupe_forme.cpp:179
GROUPE_FORME::get_tpl_map_volume
TPL_MAP_ENTITE< MG_VOLUME * > get_tpl_map_volume(void)
Definition: mstruct_groupe_forme.cpp:87
GROUPE_FORME::ajouter_longueur_forme
int ajouter_longueur_forme(MG_CG_FORME *mgcg_forme, double longueur)
Definition: mstruct_groupe_forme.cpp:292
GROUPE_FORME::ajouter_extremite_forme
int ajouter_extremite_forme(MG_CG_FORME *mgcg_forme, double *extremite_xyz)
Definition: mstruct_groupe_forme.cpp:171
GROUPE_FORME::ajouter_donnee_forme
int ajouter_donnee_forme(MG_CG_FORME *mgcg_forme, std::string donnee)
Definition: mstruct_groupe_forme.cpp:57
GROUPE_FORME::ajouter_id_forme_ini
int ajouter_id_forme_ini(MG_CG_FORME *mgcg_forme, long id)
Definition: mstruct_groupe_forme.cpp:111
TPL_MAP_ENTITE< MG_CG_FORME * >
GROUPE_FORME::ajouter_axe_forme
int ajouter_axe_forme(MG_CG_FORME *mgcg_forme, double *axe_xyz)
Definition: mstruct_groupe_forme.cpp:232
GROUPE_FORME::get_premiere_donnee_forme
std::string get_premiere_donnee_forme(MG_CG_FORME *mgcg_forme, std::multimap< long, std::string >::iterator &it)
Definition: mstruct_groupe_forme.cpp:69
GROUPE_FORME::get_id_forme_ini
int get_id_forme_ini(MG_CG_FORME *mgcg_forme, long &id)
Definition: mstruct_groupe_forme.cpp:119
GROUPE_FORME
Definition: mstruct_groupe_forme.h:35
GROUPE_FORME::get_centre_forme
int get_centre_forme(MG_CG_FORME *mgcg_forme, double *centre_xyz)
Definition: mstruct_groupe_forme.cpp:148
GROUPE_FORME::get_rayon_forme
int get_rayon_forme(MG_CG_FORME *mgcg_forme, double &rayon)
Definition: mstruct_groupe_forme.cpp:271
GROUPE_FORME::m_map_donnees_forme
std::multimap< long, std::string > m_map_donnees_forme
Definition: mstruct_groupe_forme.h:71
GROUPE_FORME::importer
void importer(std::ifstream &f, MG_CG_MODELE *mgcg_modele)
Definition: mstruct_groupe_forme.cpp:340
GROUPE_FORME::get_nb_donnee_forme
long get_nb_donnee_forme(MG_CG_FORME *mgcg_forme)
Definition: mstruct_groupe_forme.cpp:64
GROUPE_FORME::get_tpl_map_forme
TPL_MAP_ENTITE< MG_CG_FORME * > & get_tpl_map_forme(void)
Definition: mstruct_groupe_forme.cpp:378
MG_CG_FORME
Definition: mg_cg_forme.h:41
f
double f(double x, long nb, double *xfonc, double *fonc, double eng, double eni, double lambda, double nor, double *fonc2)
Definition: fct_generateur_calibrage.cpp:96
GROUPE_FORME::get_position_relative
int get_position_relative(MG_CG_FORME *mgcg_forme, std::string &str)
Definition: mstruct_groupe_forme.cpp:210
GROUPE_FORME::exporter
void exporter(std::ofstream &f)
Definition: mstruct_groupe_forme.cpp:321
GROUPE_FORME::get_suivante_donnee_forme
std::string get_suivante_donnee_forme(MG_CG_FORME *mgcg_forme, std::multimap< long, std::string >::iterator &it)
Definition: mstruct_groupe_forme.cpp:78
GROUPE_FORME::ajouter_centre_forme
int ajouter_centre_forme(MG_CG_FORME *mgcg_forme, double *centre_xyz)
Definition: mstruct_groupe_forme.cpp:140
MG_CG_MODELE
Definition: mg_cg_modele.h:41
tpl_map_entite.h
GROUPE_FORME::get_longueur_forme
int get_longueur_forme(MG_CG_FORME *mgcg_forme, double &longueur)
Definition: mstruct_groupe_forme.cpp:300
GROUPE_FORME::~GROUPE_FORME
~GROUPE_FORME(void)
Definition: mstruct_groupe_forme.cpp:41
GROUPE_FORME::m_tpl_map_forme
TPL_MAP_ENTITE< MG_CG_FORME * > m_tpl_map_forme
Definition: mstruct_groupe_forme.h:70
GROUPE_FORME::get_axe_forme
int get_axe_forme(MG_CG_FORME *mgcg_forme, double *axe_xyz)
Definition: mstruct_groupe_forme.cpp:240
GROUPE_FORME::ajouter_position_relative
int ajouter_position_relative(MG_CG_FORME *mgcg_forme, std::string str)
Definition: mstruct_groupe_forme.cpp:202
GROUPE_FORME::ajouter_rayon_forme
int ajouter_rayon_forme(MG_CG_FORME *mgcg_forme, double rayon)
Definition: mstruct_groupe_forme.cpp:263
GROUPE_FORME::GROUPE_FORME
GROUPE_FORME(void)
Definition: mstruct_groupe_forme.cpp:31
mg_volume.h