MAGiC  V5.0
Mailleurs Automatiques de Géometries intégrés à la Cao
mg_operateur_boolean_intersection.cpp
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_operateur_boolean_intersection.cpp
15 //####//
16 //####//------------------------------------------------------------
17 //####//------------------------------------------------------------
18 //####// COPYRIGHT 2000-2024
19 //####// jeu 13 jun 2024 11:58:53 EDT
20 //####//------------------------------------------------------------
21 //####//------------------------------------------------------------
22 #ifdef CSG_OCC
23 
24 #include "gestionversion.h"
26 #include "mg_primitive.h"
27 #include "mg_primitive_complexe.h"
28 
29 
30 MG_OPERATEUR_BOOLEAN_INTERSECTION::MG_OPERATEUR_BOOLEAN_INTERSECTION(int sem,MG_PRIMITIVE *prim_objet,MG_PRIMITIVE *prim_outil):MG_OPERATEUR_BOOLEAN(sem,prim_objet,prim_outil)
31 {
32 }
33 
34 MG_OPERATEUR_BOOLEAN_INTERSECTION::MG_OPERATEUR_BOOLEAN_INTERSECTION(long unsigned int num,int sem,MG_PRIMITIVE *prim_objet,MG_PRIMITIVE *prim_outil): MG_OPERATEUR_BOOLEAN(num,sem,prim_objet,prim_outil)
35 {
36 }
37 
38 MG_OPERATEUR_BOOLEAN_INTERSECTION::MG_OPERATEUR_BOOLEAN_INTERSECTION(MG_OPERATEUR_BOOLEAN_INTERSECTION& mdd):MG_OPERATEUR_BOOLEAN(mdd)
39 {
40 }
41 
42 
43 
44 
45 MG_OPERATEUR_BOOLEAN_INTERSECTION::~MG_OPERATEUR_BOOLEAN_INTERSECTION()
46 {
47 }
48 
49 
50 void MG_OPERATEUR_BOOLEAN_INTERSECTION::enregistrer(std::ostream& o,double version)
51 {
52  o << "%" << get_id() << "=INTERSECTION("<< semantique << ",$" << primitive1->get_id() << ",$" << primitive2->get_id() << ");" << std::endl;
53 }
54 
55 MG_PRIMITIVE* MG_OPERATEUR_BOOLEAN_INTERSECTION::construit(unsigned long id)
56 {
57 MG_PRIMITIVE_COMPLEXE* prim=new MG_PRIMITIVE_COMPLEXE(id,this);
58 TopoDS_Shape forme_intersection = BRepAlgoAPI_Common(primitive1->get_forme(),primitive2->get_forme());
59 prim->change_forme(forme_intersection);
60 return prim;
61 }
62 
63 
64 
65 #endif