b311480e |
1 | -- Created on: 1993-10-14 |
2 | -- Created by: Remi LEQUETTE |
3 | -- Copyright (c) 1993-1999 Matra Datavision |
4 | -- Copyright (c) 1999-2012 OPEN CASCADE SAS |
5 | -- |
6 | -- The content of this file is subject to the Open CASCADE Technology Public |
7 | -- License Version 6.5 (the "License"). You may not use the content of this file |
8 | -- except in compliance with the License. Please obtain a copy of the License |
9 | -- at http://www.opencascade.org and read it completely before using this file. |
10 | -- |
11 | -- The Initial Developer of the Original Code is Open CASCADE S.A.S., having its |
12 | -- main offices at: 1, place des Freres Montgolfier, 78280 Guyancourt, France. |
13 | -- |
14 | -- The Original Code and all software distributed under the License is |
15 | -- distributed on an "AS IS" basis, without warranty of any kind, and the |
16 | -- Initial Developer hereby disclaims all such warranties, including without |
17 | -- limitation, any warranties of merchantability, fitness for a particular |
18 | -- purpose or non-infringement. Please see the License for the specific terms |
19 | -- and conditions governing the rights and limitations under the License. |
20 | |
7fd59977 |
21 | |
22 | deferred class BooleanOperation from BRepAlgo inherits MakeShape from BRepBuilderAPI |
23 | |
24 | ---Purpose: The abstract class BooleanOperation is the root |
25 | -- class of Boolean operations. |
26 | -- A BooleanOperation object stores the two shapes in |
27 | -- preparation for the Boolean operation specified in |
28 | -- one of the classes inheriting from this one. These include: |
29 | -- - Common |
30 | -- - Cut |
31 | -- - Fuse |
32 | -- - Section. |
33 | |
34 | uses |
35 | |
36 | State from TopAbs, |
37 | Shape from TopoDS, |
38 | Face from TopoDS, |
39 | Edge from TopoDS, |
40 | MapOfShape from TopTools, |
41 | DataMapOfShapeShape from TopTools, |
42 | ListOfShape from TopTools, |
43 | HBuilder from TopOpeBRepBuild, |
44 | ShapeModification from BRepBuilderAPI |
45 | |
46 | is |
47 | |
48 | Initialize (S1,S2 : Shape from TopoDS); |
49 | ---Purpose: Prepares the operations for S1 and S2. |
50 | |
51 | --modified by NIZNHY-PKV Sun Dec 15 17:16:48 2002 f |
52 | Delete(me: out) |
53 | is redefined virtual; |
54 | ---C++: alias "Standard_EXPORT virtual ~BRepAlgo_BooleanOperation() {Delete();}" |
55 | --modified by NIZNHY-PKV Sun Dec 15 17:16:51 2002 t |
56 | |
57 | PerformDS(me : in out) |
58 | ---Purpose: |
59 | ---Level: Public |
60 | is static; |
61 | |
62 | Perform(me : in out; St1,St2 : State from TopAbs) |
63 | ---Level: Public |
64 | is static; |
65 | |
66 | Builder(me) returns HBuilder from TopOpeBRepBuild |
67 | ---Level: Advanced |
68 | is static; |
69 | |
70 | Shape1(me) returns Shape from TopoDS |
71 | ---Purpose: Returns the first shape involved in this Boolean operation. |
72 | ---C++: return const & |
73 | ---Level: Public |
74 | is static; |
75 | |
76 | Shape2(me) returns Shape from TopoDS |
77 | ---Purpose: Returns the second shape involved in this Boolean operation. |
78 | ---C++: return const & |
79 | ---Level: Public |
80 | is static; |
81 | |
82 | BuilderCanWork(me : in out; B : Boolean from Standard) |
83 | is protected; |
84 | |
85 | BuilderCanWork(me) returns Boolean from Standard |
86 | is protected; |
87 | |
88 | |
89 | InitParameters(me : out) |
90 | ---Purpose: |
91 | ---Level: Private |
92 | is virtual protected; |
93 | |
94 | ---Category: Querying |
95 | |
96 | Modified (me: in out; S : Shape from TopoDS) |
97 | ---Purpose: Returns the list of shapes modified from the shape |
98 | -- <S>. |
99 | ---C++: return const & |
100 | ---Level: Public |
101 | returns ListOfShape from TopTools |
102 | is redefined virtual; |
103 | |
104 | |
105 | IsDeleted (me: in out; S : Shape from TopoDS) |
106 | returns Boolean |
107 | is redefined virtual; |
108 | |
109 | |
110 | fields |
111 | |
112 | myHBuilder : HBuilder from TopOpeBRepBuild is protected; |
113 | myS1 : Shape from TopoDS is protected; |
114 | myS2 : Shape from TopoDS is protected; |
115 | myMap : MapOfShape from TopTools; |
116 | myBuilderCanWork : Boolean from Standard; |
117 | topToSew : DataMapOfShapeShape from TopTools; |
118 | |
119 | end BooleanOperation; |