MAGiC  V5.0
Mailleurs Automatiques de Géometries intégrés à la Cao
mg_cg_forme_volume_cylindre.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 //####// mg_cg_forme_volume_cylindre.h
15 //####//
16 //####//------------------------------------------------------------
17 //####//------------------------------------------------------------
18 //####// COPYRIGHT 2000-2024
19 //####// jeu 13 jun 2024 11:58:55 EDT
20 //####//------------------------------------------------------------
21 //####//------------------------------------------------------------
22 #ifndef _MG_CG_FORME_VOLUME_CYLINDRE_
23 #define _MG_CG_FORME_VOLUME_CYLINDRE_
24 
25 
26 
27 #include <map>
28 
29 #include "mg_cg_forme_volume.h"
30 
31 class MG_GEOMETRIE;
32 class MG_CG_MODELE;
33 class MG_CG_FORME;
34 class MG_VOLUME;
35 
37 {
38 public:
39 
40  MG_CG_FORME_VOLUME_CYLINDRE(MG_CG_MODELE* mgcg_modele,double extremite_x,double extremite_y,double extremite_z,double direction_x,double direction_y,double direction_z,double rayon,double longueur);
41  MG_CG_FORME_VOLUME_CYLINDRE(MG_CG_MODELE* mgcg_modele,int etat,unsigned long num,MG_VOLUME* mg_volume,double extremite_x,double extremite_y,double extremite_z,double direction_x,double direction_y,double direction_z,double rayon,double longueur);
44 
45  virtual int get_type_forme_volume(void);
46 
47  virtual void change_extremite_x(double x);
48  virtual double get_extremite_x(void);
49  virtual void change_extremite_y(double y);
50  virtual double get_extremite_y(void);
51  virtual void change_extremite_z(double z);
52  virtual double get_extremite_z(void);
53  virtual void change_direction_x(double x);
54  virtual double get_direction_x(void);
55  virtual void change_direction_y(double y);
56  virtual double get_direction_y(void);
57  virtual void change_direction_z(double z);
58  virtual double get_direction_z(void);
59  virtual void change_rayon(double rayon);
60  virtual double get_rayon(void);
61  virtual void change_longueur(double longueur);
62  virtual double get_longueur(void);
63 
64  virtual void enregistrer(std::ostream& o,double version);
65  virtual int construire(void)=0;
66  virtual int construire(bool fusionner_entite_similaire,
67  double precision,
68  bool importer_triangulation,
69  double epsilon_triangulation)=0;
70 protected:
71  double m_extremite[3];
72  double m_direction[3];
73  double m_rayon;
74  double m_longueur;
75 };
76 
77 
78 #endif
MG_CG_FORME_VOLUME_CYLINDRE(MG_CG_MODELE *mgcg_modele, int etat, unsigned long num, MG_VOLUME *mg_volume, double extremite_x, double extremite_y, double extremite_z, double direction_x, double direction_y, double direction_z, double rayon, double longueur)
virtual void change_longueur(double longueur)
MG_CG_FORME_VOLUME_CYLINDRE(MG_CG_MODELE *mgcg_modele, double extremite_x, double extremite_y, double extremite_z, double direction_x, double direction_y, double direction_z, double rayon, double longueur)
virtual void change_rayon(double rayon)
virtual void enregistrer(std::ostream &o, double version)
virtual int construire(void)=0
virtual int construire(bool fusionner_entite_similaire, double precision, bool importer_triangulation, double epsilon_triangulation)=0