Integration of OCCT 6.5.0 from SVN
[occt.git] / src / BRepAlgo / BRepAlgo_BooleanOperation.cdl
1 -- File:        BRepAlgo_BooleanOperation.cdl
2 -- Created:     Thu Oct 14 18:14:43 1993
3 -- Author:      Remi LEQUETTE
4 --              <rle@phylox>
5 ---Copyright:    Matra Datavision 1993
6
7 deferred class BooleanOperation from BRepAlgo inherits MakeShape from BRepBuilderAPI
8
9         ---Purpose:  The abstract class BooleanOperation is the root
10         -- class of Boolean operations.
11         -- A BooleanOperation object stores the two shapes in
12         -- preparation for the Boolean operation specified in
13         -- one of the classes inheriting from this one. These include:
14         -- - Common
15         -- - Cut
16         -- - Fuse
17         -- - Section.
18
19 uses
20
21     State from TopAbs,
22     Shape from TopoDS,
23     Face from TopoDS,
24     Edge from TopoDS,
25     MapOfShape from TopTools,
26     DataMapOfShapeShape from TopTools,
27     ListOfShape from TopTools,
28     HBuilder from TopOpeBRepBuild,
29     ShapeModification from BRepBuilderAPI
30     
31 is
32
33     Initialize (S1,S2 : Shape from TopoDS);
34     ---Purpose: Prepares the operations for S1 and S2.
35
36 --modified by NIZNHY-PKV Sun Dec 15 17:16:48 2002  f     
37     Delete(me:  out)   
38         is  redefined  virtual; 
39     ---C++:  alias  "Standard_EXPORT virtual ~BRepAlgo_BooleanOperation() {Delete();}"
40 --modified by NIZNHY-PKV Sun Dec 15 17:16:51 2002  t
41
42     PerformDS(me : in out)
43     ---Purpose: 
44     ---Level: Public
45     is static;
46
47     Perform(me : in out; St1,St2 : State from TopAbs)
48     ---Level: Public
49     is static;
50     
51     Builder(me) returns HBuilder from TopOpeBRepBuild
52     ---Level: Advanced
53     is static;
54     
55     Shape1(me) returns Shape from TopoDS
56     ---Purpose: Returns the first shape involved in this Boolean operation.
57     ---C++: return const &
58     ---Level: Public
59     is static;
60
61     Shape2(me) returns Shape from TopoDS
62     ---Purpose: Returns the second shape involved in this Boolean operation.
63     ---C++: return const &
64     ---Level: Public
65     is static;
66     
67     BuilderCanWork(me : in out; B : Boolean from Standard)
68     is protected;
69     
70     BuilderCanWork(me) returns Boolean from Standard
71     is protected;
72     
73        
74     InitParameters(me : out)
75     ---Purpose: 
76     ---Level: Private
77     is virtual protected;
78
79 ---Category: Querying
80
81     Modified (me: in out; S : Shape from TopoDS)
82         ---Purpose: Returns the list  of shapes modified from the shape
83         --          <S>. 
84         ---C++: return const & 
85         ---Level: Public
86     returns ListOfShape from TopTools
87     is redefined virtual;
88
89
90     IsDeleted (me: in out; S : Shape from TopoDS)
91     returns Boolean
92     is redefined virtual;
93
94
95 fields
96
97     myHBuilder : HBuilder    from TopOpeBRepBuild is protected;
98     myS1 : Shape from TopoDS is protected;
99     myS2 : Shape from TopoDS is protected;
100     myMap : MapOfShape from TopTools;
101     myBuilderCanWork : Boolean from Standard;    
102     topToSew      : DataMapOfShapeShape from TopTools;
103     
104 end BooleanOperation;