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
virtual void enregistrer(std::ostream &o, double version)
virtual int construire(bool fusionner_entite_similaire, double precision, bool importer_triangulation, double epsilon_triangulation)=0
MG_CG_FORME_VOLUME_ELLIPSOIDE(MG_CG_MODELE *mgcg_modele, int etat, unsigned long num, MG_VOLUME *mg_volume, double centre_x, double centre_y, double centre_z, double direction_x, double direction_y, double direction_z, double rayon_majeur, double rayon_mineur)
virtual void change_rayon_majeur(double rayon_majeur)
virtual int construire(void)=0
virtual void change_rayon_mineur(double rayon_mineur)
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)