1 -- Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE
3 -- Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
4 -- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
6 -- This library is free software; you can redistribute it and/or
7 -- modify it under the terms of the GNU Lesser General Public
8 -- License as published by the Free Software Foundation; either
9 -- version 2.1 of the License.
11 -- This library is distributed in the hope that it will be useful,
12 -- but WITHOUT ANY WARRANTY; without even the implied warranty of
13 -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 -- Lesser General Public License for more details.
16 -- You should have received a copy of the GNU Lesser General Public
17 -- License along with this library; if not, write to the Free Software
18 -- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
20 -- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
22 -- File: NMTAlgo_Splitter.cdl
23 -- Created: Tue Jan 27 15:09:45 2004
24 -- Author: Peter KURNEV
27 class Splitter from NMTAlgo
28 inherits Builder from NMTAlgo
34 ShapeEnum from TopAbs,
39 MapOfOrientedShape from TopTools,
40 IndexedMapOfShape from TopTools,
41 DataMapOfShapeShape from TopTools,
42 DataMapOfShapeListOfShape from TopTools,
43 ListOfShape from TopTools,
44 MapOfShape from TopTools,
48 DSFiller from NMTTools
54 returns Splitter from NMTAlgo;
55 ---C++: alias "Standard_EXPORT virtual ~NMTAlgo_Splitter();"
58 S : Shape from TopoDS)
62 S : Shape from TopoDS)
69 aLimit:ShapeEnum from TopAbs=TopAbs_SHAPE)
72 ComputeWithFiller(me:out;
73 aDSF: DSFiller from NMTTools)
77 KeepShapesInside (me:out;
78 S : Shape from TopoDS);
79 ---Purpose: remove shapes that are outside of S from result.
80 -- S should be an object shape.
81 ---Warning: call it after Build()
83 RemoveShapesInside (me:out;
84 S : Shape from TopoDS);
85 ---Purpose: remove shapes that are inside S from result.
86 -- S should be an object shape.
87 ---Warning: call it after Build()
90 S : Shape from TopoDS)
91 returns ListOfShape from TopTools;
92 ---Purpose: Returns the list of shapes modified from the shape <S>.
93 ---C++: return const &
97 S : Shape from TopoDS)
98 returns ListOfShape from TopTools;
99 ---Purpose: Returns the list of shapes generated from the shape <S>.
100 ---C++: return const &
104 S : Shape from TopoDS)
105 returns Boolean from Standard;
112 returns ListOfShape from TopTools;
113 ---C++: return const &
118 FillImageShape(me:out)
121 SplittedFaces (me:out)
124 SplittedWires (me:out)
127 SplitsAndSections (me:out)
130 ShellsAndSolids(me:out)
134 aS :Shape from TopoDS;
135 aLNS:out ListOfShape from TopTools)
139 Solid : Shape from TopoDS;
140 Shells: out ListOfShape from TopTools)
143 FindFacesInside (me:out;
144 S : Shape from TopoDS;
145 CheckClosed : Boolean from Standard= Standard_False;
146 All : Boolean from Standard= Standard_False)
147 returns Shape from TopoDS
151 S1,S2 : Shape from TopoDS)
152 returns Boolean from Standard is protected;
153 ---Purpose: Return True if the first vertex of S1 inside S2.
154 -- If S1.IsNull(), check infinite point against S2.
157 aShape : Shape from TopoDS)
158 returns Shape from TopoDS
161 --modified by NIZNHY-PKV Tue Feb 1 10:24:39 2005f
163 aS : Shape from TopoDS;
164 aLIms: out ListOfShape from TopTools)
166 --modified by NIZNHY-PKV Tue Feb 1 10:24:47 2005t
169 myDoneStep : ShapeEnum from TopAbs is protected; -- rebuilt level
170 myBuilder : Builder from BRep is protected;
172 myListShapes : ListOfShape from TopTools is protected; -- object shapes
173 myMapFaces : MapOfShape from TopTools is protected; -- object faces
174 myMapTools : MapOfShape from TopTools is protected; -- tool faces
175 myEqualEdges : MapOfShape from TopTools is protected; -- equal splits
176 myNewSection : MapOfShape from TopTools is protected; -- new secton edges
177 myClosedShapes : MapOfShape from TopTools is protected;
178 myWrappingSolid: MapOfShape from TopTools is protected; -- solids having other shapes inside
179 myFaceShapeMap : DataMapOfShapeShape from TopTools is protected; -- to find a shape by face
181 myInternalFaces: DataMapOfShapeShape from TopTools is protected; -- shape and its internal faces
182 myIntNotClFaces: DataMapOfShapeShape from TopTools is protected; -- internal but not closed
184 myImageShape : Image from BRepAlgo is protected;
186 -- avoid rebuilding twice commont part of solids
187 myAddedFacesMap: MapOfOrientedShape from TopTools is protected;
189 mySourceShapes : ListOfShape from TopTools is protected;
190 myLimit : ShapeEnum from TopAbs is protected;
191 myToolShapes : MapOfShape from TopTools is protected;
192 myObjShapes : MapOfShape from TopTools is protected;
193 myMapSIFC : DataMapOfShapeShape from TopTools is protected;
195 myGenerated : ListOfShape from TopTools is protected;
196 --modified by NIZNHY-PKV Mon Jan 24 09:45:10 2005f
197 myModifiedFaces: DataMapOfShapeListOfShape from TopTools is protected;
198 --modified by NIZNHY-PKV Mon Jan 24 09:45:14 2005t