ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/REPOS_ERICCA/magic/lib/geometrie/src/occ_surface.h
Revision: 740
Committed: Wed Sep 30 22:24:50 2015 UTC (9 years, 7 months ago) by couturad
Content type: text/plain
File size: 2830 byte(s)
Log Message:
Ajout d'assemblage dans un arbre caractéristique
Modification de la gestion des id de occ avec retro-compatibilité
script adaptable au assemblage

File Contents

# User Rev Content
1 francois 283 //---------------------------------------------------------------------------
2     //------------------------------------------------------------
3     //------------------------------------------------------------
4     // MAGiC
5     // Jean Christophe Cuilli�re et Vincent FRANCOIS
6     // D�partement de G�nie M�canique - UQTR
7     //------------------------------------------------------------
8     // Le projet MAGIC est un projet de recherche du d�partement
9     // de g�nie m�canique de l'Universit� du Qu�bec �
10     // Trois Rivi�res
11     // Les librairies ne peuvent �tre utilis�es sans l'accord
12     // des auteurs (contact : francois@uqtr.ca)
13     //------------------------------------------------------------
14     //------------------------------------------------------------
15     //
16     // OCC_Surface.h
17     //
18     //------------------------------------------------------------
19     //------------------------------------------------------------
20     // COPYRIGHT 2000
21     // Version du 02/03/2006 � 11H22
22     //------------------------------------------------------------
23     //------------------------------------------------------------
24     //---------------------------------------------------------------------------
25    
26     //-------------------------------------------------------------------------
27     #ifdef BREP_OCC
28     #ifndef OCC_SurfaceH
29     #define OCC_SurfaceH
30    
31     #ifdef WINDOWS_VERSION
32     #ifdef BUILT_DLL_GEOMETRIE
33     #define DLLPORTGEOMETRIE __declspec(dllexport)
34     #else
35     #define DLLPORTGEOMETRIE __declspec(dllimport)
36     #endif
37     #else
38     #define DLLPORTGEOMETRIE
39     #endif
40    
41    
42    
43     #include "mg_surface.h"
44     #include "Geom_Surface.hxx"
45 couturad 740 #include "occ_fonction.h"
46 francois 283 #include "TopoDS_Face.hxx"
47     #include <map>
48    
49     class DLLPORTGEOMETRIE OCC_SURFACE:public MG_SURFACE
50     {
51     public:
52 couturad 740 OCC_SURFACE(unsigned long num, TopoDS_Face srf, OCC_FONCTION& fonc);
53     OCC_SURFACE(TopoDS_Face srf, OCC_FONCTION& fonc);
54 francois 283 OCC_SURFACE(OCC_SURFACE& mdd);
55     virtual ~OCC_SURFACE();
56     virtual void evaluer(double *uv,double *xyz);
57     virtual void deriver(double *uv,double *xyzdu, double *xyzdv);
58     virtual void deriver_seconde(double *uv,double* xyzduu,double* xyzduv,double* xyzdvv,double *xyz, double *xyzdu, double *xyzdv);
59     virtual void inverser(double *uv,double *xyz,double precision=1e-6);
60     virtual int est_periodique_u(void);
61     virtual int est_periodique_v(void);
62     virtual double get_periode_u(void);
63     virtual double get_periode_v(void);
64     virtual void enregistrer(std::ostream& o);
65     virtual int get_type_geometrique(TPL_LISTE_ENTITE<double> &param);
66     virtual void get_param_NURBS(int& indx_premier_ptctr,TPL_LISTE_ENTITE<double> &param);
67    
68    
69    
70     virtual void get_triangulation(class MG_MAILLAGE* mai,class MG_FACE* face,std::multimap<double,class MG_NOEUD*,std::less<double> >& tabnoeudfusm,double eps,int mode);
71    
72     private:
73     TopoDS_Face face;
74 couturad 740 OCC_FONCTION& fonction1;
75 francois 283
76    
77     };
78     #endif
79     #endif