ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/REPOS_ERICCA/magic/lib/geometrie/src/mg_assemblage.h
Revision: 906
Committed: Mon Nov 13 22:30:18 2017 UTC (7 years, 9 months ago) by couturad
Content type: text/plain
File size: 2601 byte(s)
Log Message:
Nouveau opencascade commit 1

File Contents

# Content
1 //------------------------------------------------------------
2 //------------------------------------------------------------
3 // MAGiC
4 // Jean Christophe Cuilli�re et Vincent FRANCOIS
5 // D�partement de G�nie M�canique - UQTR
6 //------------------------------------------------------------
7 // Le projet MAGIC est un projet de recherche du d�partement
8 // de g�nie m�canique de l'Universit� du Qu�bec �
9 // Trois Rivi�res
10 // Les librairies ne peuvent �tre utilis�es sans l'accord
11 // des auteurs (contact : francois@uqtr.ca)
12 //------------------------------------------------------------
13 //------------------------------------------------------------
14 //
15 // mg_assemblage.h
16 //
17 //------------------------------------------------------------
18 //------------------------------------------------------------
19 // COPYRIGHT 2000
20 // Version du 02/03/2006 � 11H22
21 //------------------------------------------------------------
22 //------------------------------------------------------------
23 #ifdef CSG_OCC
24
25
26 #ifndef __MGASSEMBLAGE_
27 #define __MGASSEMBLAGE_
28
29 #ifdef WINDOWS_VERSION
30 #ifdef BUILT_DLL_GEOMETRIE
31 #define DLLPORTGEOMETRIE __declspec(dllexport)
32 #else
33 #define DLLPORTGEOMETRIE __declspec(dllimport)
34 #endif
35 #else
36 #define DLLPORTGEOMETRIE
37 #endif
38
39 #include "mg_construction_geometrique.h"
40
41
42
43
44 #include <map>
45 #include <vector>
46
47 class MG_PRIMITIVE;
48 class MG_ARBRE;
49
50 typedef std::map<unsigned long,MG_PRIMITIVE*,std::less<unsigned long> > LISTE_MG_PRIMITIVE;
51
52 class DLLPORTGEOMETRIE MG_ASSEMBLAGE : public MG_CONSTRUCTION_GEOMETRIQUE
53 {
54 public:
55 MG_ASSEMBLAGE(std::string nm);
56 MG_ASSEMBLAGE(unsigned long num,std::string nm);
57 MG_ASSEMBLAGE(MG_ASSEMBLAGE& mdd);
58 virtual ~MG_ASSEMBLAGE();
59
60 int ajouter_mg_primitive(MG_PRIMITIVE *mgprim);
61 int ajouter_mg_primitive(unsigned long id);
62 MG_PRIMITIVE* get_mg_primitiveid(unsigned long num);
63 MG_PRIMITIVE* get_mg_primitive(unsigned int num);
64 MG_PRIMITIVE* get_premier_primitive(LISTE_MG_PRIMITIVE::iterator & it);
65 MG_PRIMITIVE* get_suivant_primitive(LISTE_MG_PRIMITIVE::iterator & it);
66 unsigned int get_nb_mg_primitive(void);
67 int supprimer_mg_primitiveid(unsigned long num);
68 int supprimer_mg_primitive(unsigned int num);
69 void supprimer_tout_mg_primitive(void);
70 void ini_donne(MG_ARBRE* arb);
71 virtual void enregistrer(std::ostream& o,double version);
72 virtual int get_type_mg_construction_geometrique(void);
73
74 private:
75
76 protected:
77 LISTE_MG_PRIMITIVE lst_mg_primitive;
78 std::vector<unsigned long> lst_mg_primitive_id;
79 std::string nom;
80 };
81
82
83 #endif
84
85 #endif