ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/REPOS_ERICCA/magic/lib/geometrie/src/vct_face.h
Revision: 66
Committed: Wed Mar 19 16:45:26 2008 UTC (17 years, 1 month ago) by souaissa
Content type: text/plain
Original Path: magic/lib/geometrie/geometrie/src/vct_face.h
File size: 2510 byte(s)
Log Message:
reorganisation des classes de vectorisation. Situation normalement final pour le doc de khaled

File Contents

# User Rev Content
1 souaissa 66 //---------------------------------------------------------------------------
2    
3     #ifndef vct_faceH
4     #define vct_faceH
5     //---------------------------------------------------------------------------
6    
7    
8     #ifdef WINDOWS_VERSION
9     #ifdef BUILT_DLL_GEOMETRIE
10     #define DLLPORTGEOMETRIE __declspec(dllexport)
11     #else
12     #define DLLPORTGEOMETRIE __declspec(dllimport)
13     #endif
14     #else
15     #define DLLPORTGEOMETRIE
16     #endif
17    
18     #include <vector.h>
19    
20     #include "vct_surface.h"
21     #include "vct_arete.h"
22     #include "vct_courbe.h"
23     #include "ot_doubleprecision.h"
24     #include "vct_element_topologique.h"
25     #include "ot_mathematique.h"
26     #include "ot_tenseur.h"
27    
28     class DLLPORTGEOMETRIE VCT_FACE:public VCT_ELEMENT_TOPOLOGIQUE
29     {
30     public:
31    
32     VCT_FACE (class MG_FACE* face);
33     VCT_FACE (VCT_FACE& mdd);
34     virtual ~VCT_FACE();
35    
36     virtual void get_topo_vectorisation(vector<double2>& lst);
37     virtual void get_geo_vectorisation(vector<double2>& lst);
38     virtual void get_vectorisation_topo_contr(vector<double2>& lst);
39     virtual void get_vectorisation_geo_contr(vector<double2>& lst);
40     virtual OT_TNS<double2,4> get_tenseur_metrique_surface();
41     virtual OT_TNS<double2,4> get_tenseur_metrique_aretes();
42     virtual void get_geo_barycentre(double2* xyz);
43     virtual void get_topo_barycentre(double2* xyz);
44     virtual double2 get_inertie_au_centre_de_masse();
45     virtual double2 get_inertie_au_point(double2* xyz);
46     virtual void get_covariance(double2* cov);
47     virtual void get_axes_dinertie(OT_VECTEUR_3D& vp1,OT_VECTEUR_3D& vp2,OT_VECTEUR_3D& vp3);
48     virtual void enregistrer(std::ostream& o);
49     friend std::ostream& operator <<(std::ostream& o,const VCT_FACE& vct_f);
50     virtual void get_tenseur_inertie_au_cm(double2* tens);
51     virtual void get_tenseur_inertie_au_pt(double2* xyz, double2* tens);
52     virtual void get_tenseur_inertie_base_locale(double2* tens);
53     virtual void get_tenseur_inertie_prprt_face(double2* G1G2, double2* tens,const VCT_FACE& vct_f);
54     int get_nb_geo_points();
55     int get_nb_topo_points();
56     virtual VCT_SURFACE* get_vct_surface();
57     protected:
58     VCT_SURFACE* vct_surf;
59     vector<double2> LISTE_GEO_VECTEUR_FACE;
60     vector<double2> LISTE_TOPO_VECTEUR_FACE;
61     vector<double2> LISTE_GEO_VECTEURS_CONTOURS;
62     vector<double2> LISTE_TOPO_VECTEURS_CONTOURS;
63     vector<double2> LISTE_POINTS_CTRS;
64     int nb_geo_points; //pts_surf+pts_courbes
65     int nb_topo_points; //pts_surf+pts_aretes
66     int nb_pts_surf;
67     };
68    
69    
70     DLLPORTGEOMETRIE std::ostream& operator <<(std::ostream& os,const VCT_FACE& vct_f);
71    
72     #endif