ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/REPOS_ERICCA/magic/lib/geometrie/src/CAD4FE_MCFace.h
Revision: 569
Committed: Thu Oct 16 14:36:31 2014 UTC (10 years, 6 months ago) by foucault
Content type: text/plain
File size: 1880 byte(s)
Log Message:
Mise à jour pour CAD4FE (Gilles) : operation 1 (tentative)

File Contents

# User Rev Content
1 foucault 27 #ifndef CAD4FE_MCFaceh
2     #define CAD4FE_MCFaceh
3    
4     //---------------------------------------------------------------------------
5 foucault 569 // include MAGIC Headers
6 foucault 27 #include "gestionversion.h"
7 francois 102 #include "mg_geometrie.h"
8     #include "mg_face.h"
9 foucault 27 #include <ot_mathematique.h>
10     #include "mg_geometrie.h"
11     #include "mg_face.h"
12     //---------------------------------------------------------------------------
13    
14     #include <map>
15     #include <vector>
16     #include <string>
17     #include <ostream>
18    
19     using namespace std;
20    
21     #ifdef WINDOWS_VERSION
22 foucault 569 #ifdef BUILT_DLL_GEOMETRIE
23     #define DLLPORTGEOMETRIE __declspec(dllexport)
24     #else
25     #define DLLPORTGEOMETRIE __declspec(dllimport)
26     #endif
27 foucault 27 #else
28 foucault 569 #define DLLPORTGEOMETRIE
29 foucault 27 #endif
30    
31     namespace CAD4FE {
32    
33     class MCEdge;
34     class MCVertex;
35     class PolySurface;
36    
37     /**
38     * This class descibes a MC Face entity
39     */
40     class DLLPORTGEOMETRIE MCFace : public MG_FACE {
41     public:
42 foucault 569 /** Constructor */
43     MCFace( MG_FACE * __mgFace);
44     MCFace( MCFace & __a, MCFace & __b);
45     MCFace( std::string & __idOriginal, PolySurface * __polySurface);
46     MCFace( MCFace & __src);
47     ~MCFace();
48 foucault 27
49 foucault 569 PolySurface * GetPolySurface();
50 foucault 27
51 foucault 569 virtual void enregistrer(std::ostream& o);
52 foucault 27
53 foucault 569 /** modification time : represent the last step number
54     * of the MCAA process which created or modified this entity */
55     int time;
56 foucault 27
57 foucault 569 void calcul_normale_unitaire(double *uv, double *xyz){}
58     void calcul_normale_unitaire(MG_SOMMET *v, double __n[3], int * __nbRefFace);
59     void calcul_normale_unitaire(MCVertex * __mcVertex, double __n[3], int *__nbRefFace);
60     void calcul_normale_unitaire(const std::map<MG_FACE *, OT_VECTEUR_3D > & __tabRefFaceUV, double __n[3], int *__nbRefFace);
61    
62 foucault 27 protected:
63 foucault 569 void _CopyRefFaces( MCFace & __src);
64     void _CopyMeshLink( MCFace & __mcFace);
65 foucault 27 };
66    
67     }
68    
69     #endif