0023711: Incorrect result done by fuse operation
[occt.git] / src / BOP / BOP_SolidSolid.cdl
CommitLineData
b311480e 1-- Created on: 2001-05-25
2-- Created by: Peter KURNEV
3-- Copyright (c) 2001-2012 OPEN CASCADE SAS
4--
5-- The content of this file is subject to the Open CASCADE Technology Public
6-- License Version 6.5 (the "License"). You may not use the content of this file
7-- except in compliance with the License. Please obtain a copy of the License
8-- at http://www.opencascade.org and read it completely before using this file.
9--
10-- The Initial Developer of the Original Code is Open CASCADE S.A.S., having its
11-- main offices at: 1, place des Freres Montgolfier, 78280 Guyancourt, France.
12--
13-- The Original Code and all software distributed under the License is
14-- distributed on an "AS IS" basis, without warranty of any kind, and the
15-- Initial Developer hereby disclaims all such warranties, including without
16-- limitation, any warranties of merchantability, fitness for a particular
17-- purpose or non-infringement. Please see the License for the specific terms
18-- and conditions governing the rights and limitations under the License.
19
7fd59977 20
21
22class SolidSolid from BOP inherits ShellSolid from BOP
23
24 ---Purpose:
25 --- Performs Boolean Operations (BO)
26 --- Common,Cut,Fuse for solids as
27 --- arguments
28 ---
29uses
30 DSFiller from BOPTools,
31
32 WireEdgeSet from BOP,
33 ShellFaceSet from BOP,
34
35 HistoryCollector from BOP,
36 IndexedDataMapOfIntegerIndexedMapOfInteger from BOPTColStd,
37 DataMapOfShapeInteger from TopTools,
38 Shape from TopoDS,
19d6e40d 39 Solid from TopoDS,
7fd59977 40 State from TopAbs,
41
42 ListOfShape from TopTools
43
44
45is
46 Create
47 returns SolidSolid from BOP;
48 ---Purpose:
49 --- Empty constructor;
50 ---
51 DoWithFiller (me:out;
52 aDSF: DSFiller from BOPTools)
53 is redefined;
54 ---Purpose:
55 --- See base classes, please
56 ---
57 Destroy (me: in out)
58 is redefined;
59 ---C++: alias "Standard_EXPORT virtual ~BOP_SolidSolid(){Destroy();}"
60 ---Purpose:
61 --- Destructor
62 ---
63 DoNewFaces(me: out)
64 is redefined;
65 ---Purpose:
66 --- See base classes, please
67 ---
68 BuildResult (me: out)
69 is redefined;
70 ---Purpose:
71 --- See base classes, please
72 ---
73
74 SetHistoryCollector(me: in out; theHistory: HistoryCollector from BOP)
75 is redefined virtual;
76
77 ---
78 --- P r i v a t e b l o c k
79 ---
80 PrepareSFS (me:out;
81 aFaces: ListOfShape from TopTools;
82 aSFS : out ShellFaceSet from BOP)
83 is private;
84
85 PrepareFaceSplits(me: out)
86 is private;
87
88 PropagateFaceStateByEdges(me: in out; theFace: Shape from TopoDS;
89 theMapOfEdgeIndex: DataMapOfShapeInteger from TopTools;
90 theState: out State from TopAbs)
91 returns Boolean from Standard
92 is private;
93
94 ComputeStateByInsidePoints(me: in out; theFaceIndex: Integer from Standard;
95 theBaseFaceIndex: Integer from Standard;
96 theFaceRank: Integer from Standard;
97 theFFMap: IndexedDataMapOfIntegerIndexedMapOfInteger from BOPTColStd;
98 theState: out State from TopAbs)
99 returns Boolean from Standard
100 is private;
101
102 TakeOnSplit(me; theFaceIndex: Integer from Standard;
103 theBaseFaceIndex: Integer from Standard)
104 returns Boolean from Standard
105 is private;
19d6e40d 106
107 PrepareReferences(me:out)
108 is protected;
109
110fields
111 myRefObject: Solid from TopoDS is protected;
112 myRefTool : Solid from TopoDS is protected;
113
7fd59977 114end SolidSolid;