MAGiC  V5.0
Mailleurs Automatiques de Géometries intégrés à la Cao
mg_cg_forme_volume_ellipsoide.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_ellipsoide.h
15 //####//
16 //####//------------------------------------------------------------
17 //####//------------------------------------------------------------
18 //####// COPYRIGHT 2000-2024
19 //####// jeu 13 jun 2024 11:58:54 EDT
20 //####//------------------------------------------------------------
21 //####//------------------------------------------------------------
22 #ifndef _MG_CG_FORME_VOLUME_ELLIPSOIDE_
23 #define _MG_CG_FORME_VOLUME_ELLIPSOIDE_
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 
41  double centre_x,double centre_y,double centre_z,
42  double direction_x,double direction_y,double direction_z,
43  double rayon_majeur, double rayon_mineur);
45  int etat,
46  unsigned long num,
47  MG_VOLUME* mg_volume,
48  double centre_x,double centre_y,double centre_z,
49  double direction_x,double direction_y,double direction_z,
50  double rayon_majeur, double rayon_mineur);
53 
54  virtual int get_type_forme_volume(void);
55  virtual void change_centre_x(double x);
56  virtual double get_centre_x(void);
57  virtual void change_centre_y(double y);
58  virtual double get_centre_y(void);
59  virtual void change_centre_z(double z);
60  virtual double get_centre_z(void);
61  virtual void change_direction_x(double x);
62  virtual double get_direction_x(void);
63  virtual void change_direction_y(double y);
64  virtual double get_direction_y(void);
65  virtual void change_direction_z(double z);
66  virtual double get_direction_z(void);
67  virtual void change_rayon_majeur(double rayon_majeur);
68  virtual double get_rayon_majeur(void);
69  virtual void change_rayon_mineur(double rayon_mineur);
70  virtual double get_rayon_mineur(void);
71 
72  virtual void enregistrer(std::ostream& o,double version);
73  virtual int construire(void)=0;
74  virtual int construire(bool fusionner_entite_similaire,
75  double precision,
76  bool importer_triangulation,
77  double epsilon_triangulation)=0;
78 protected:
79  double m_centre[3];
80  double m_direction[3];
83 };
84 
85 
86 #endif
MG_CG_FORME_VOLUME_ELLIPSOIDE::change_direction_y
virtual void change_direction_y(double y)
Definition: mg_cg_forme_volume_ellipsoide.cpp:126
MG_CG_FORME_VOLUME_ELLIPSOIDE::get_rayon_mineur
virtual double get_rayon_mineur(void)
Definition: mg_cg_forme_volume_ellipsoide.cpp:165
MG_CG_FORME_VOLUME_ELLIPSOIDE::get_rayon_majeur
virtual double get_rayon_majeur(void)
Definition: mg_cg_forme_volume_ellipsoide.cpp:154
MG_CG_FORME_VOLUME_ELLIPSOIDE::get_direction_x
virtual double get_direction_x(void)
Definition: mg_cg_forme_volume_ellipsoide.cpp:121
MG_CG_FORME_VOLUME_ELLIPSOIDE::change_direction_x
virtual void change_direction_x(double x)
Definition: mg_cg_forme_volume_ellipsoide.cpp:115
mg_cg_forme_volume.h
MG_CG_FORME_VOLUME_ELLIPSOIDE::m_rayon_mineur
double m_rayon_mineur
Definition: mg_cg_forme_volume_ellipsoide.h:82
MG_CG_FORME_VOLUME_ELLIPSOIDE::MG_CG_FORME_VOLUME_ELLIPSOIDE
MG_CG_FORME_VOLUME_ELLIPSOIDE(MG_CG_MODELE *mgcg_modele, double centre_x, double centre_y, double centre_z, double direction_x, double direction_y, double direction_z, double rayon_majeur, double rayon_mineur)
Definition: mg_cg_forme_volume_ellipsoide.cpp:27
MG_CG_FORME_VOLUME_ELLIPSOIDE::get_type_forme_volume
virtual int get_type_forme_volume(void)
Definition: mg_cg_forme_volume_ellipsoide.cpp:77
MG_CG_FORME_VOLUME_ELLIPSOIDE::get_centre_z
virtual double get_centre_z(void)
Definition: mg_cg_forme_volume_ellipsoide.cpp:110
MG_CG_FORME_VOLUME_ELLIPSOIDE::change_centre_x
virtual void change_centre_x(double x)
Definition: mg_cg_forme_volume_ellipsoide.cpp:82
MG_CG_FORME_VOLUME_ELLIPSOIDE::construire
virtual int construire(void)=0
MG_VOLUME
Definition: mg_volume.h:33
MG_CG_FORME_VOLUME_ELLIPSOIDE::change_centre_z
virtual void change_centre_z(double z)
Definition: mg_cg_forme_volume_ellipsoide.cpp:104
MG_CG_FORME_VOLUME_ELLIPSOIDE::~MG_CG_FORME_VOLUME_ELLIPSOIDE
virtual ~MG_CG_FORME_VOLUME_ELLIPSOIDE()
Definition: mg_cg_forme_volume_ellipsoide.cpp:72
MG_CG_FORME
Definition: mg_cg_forme.h:41
MG_CG_FORME_VOLUME_ELLIPSOIDE::get_centre_x
virtual double get_centre_x(void)
Definition: mg_cg_forme_volume_ellipsoide.cpp:88
MG_CG_FORME_VOLUME_ELLIPSOIDE::m_rayon_majeur
double m_rayon_majeur
Definition: mg_cg_forme_volume_ellipsoide.h:81
MG_CG_FORME_VOLUME_ELLIPSOIDE::change_centre_y
virtual void change_centre_y(double y)
Definition: mg_cg_forme_volume_ellipsoide.cpp:93
MG_CG_FORME_VOLUME_ELLIPSOIDE::m_direction
double m_direction[3]
Definition: mg_cg_forme_volume_ellipsoide.h:80
MG_CG_FORME_VOLUME_ELLIPSOIDE::change_direction_z
virtual void change_direction_z(double z)
Definition: mg_cg_forme_volume_ellipsoide.cpp:137
MG_CG_FORME_VOLUME_ELLIPSOIDE::get_direction_z
virtual double get_direction_z(void)
Definition: mg_cg_forme_volume_ellipsoide.cpp:143
MG_CG_FORME_VOLUME_ELLIPSOIDE::change_rayon_mineur
virtual void change_rayon_mineur(double rayon_mineur)
Definition: mg_cg_forme_volume_ellipsoide.cpp:159
MG_CG_FORME_VOLUME_ELLIPSOIDE::get_centre_y
virtual double get_centre_y(void)
Definition: mg_cg_forme_volume_ellipsoide.cpp:99
MG_CG_MODELE
Definition: mg_cg_modele.h:41
MG_CG_FORME_VOLUME_ELLIPSOIDE::change_rayon_majeur
virtual void change_rayon_majeur(double rayon_majeur)
Definition: mg_cg_forme_volume_ellipsoide.cpp:148
MG_CG_FORME_VOLUME_ELLIPSOIDE
Definition: mg_cg_forme_volume_ellipsoide.h:36
MG_GEOMETRIE
Definition: mg_geometrie.h:84
MG_CG_FORME_VOLUME_ELLIPSOIDE::get_direction_y
virtual double get_direction_y(void)
Definition: mg_cg_forme_volume_ellipsoide.cpp:132
MG_CG_FORME_VOLUME_ELLIPSOIDE::enregistrer
virtual void enregistrer(std::ostream &o, double version)
Definition: mg_cg_forme_volume_ellipsoide.cpp:170
MG_CG_FORME_VOLUME_ELLIPSOIDE::m_centre
double m_centre[3]
Definition: mg_cg_forme_volume_ellipsoide.h:79
MG_CG_FORME_VOLUME
Definition: mg_cg_forme_volume.h:36