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
28 class Splitter from NMTAlgo
29 inherits Builder from NMTAlgo
35 ShapeEnum from TopAbs,
40 MapOfOrientedShape from TopTools,
41 IndexedMapOfShape from TopTools,
42 DataMapOfShapeShape from TopTools,
43 DataMapOfShapeListOfShape from TopTools,
44 ListOfShape from TopTools,
45 MapOfShape from TopTools,
49 DSFiller from NMTTools
55 returns Splitter from NMTAlgo;
56 ---C++: alias "Standard_EXPORT virtual ~NMTAlgo_Splitter();"
59 S : Shape from TopoDS)
63 S : Shape from TopoDS)
70 aLimit:ShapeEnum from TopAbs=TopAbs_SHAPE)
73 ComputeWithFiller(me:out;
74 aDSF: DSFiller from NMTTools)
78 KeepShapesInside (me:out;
79 S : Shape from TopoDS);
80 ---Purpose: remove shapes that are outside of S from result.
81 -- S should be an object shape.
82 ---Warning: call it after Build()
84 RemoveShapesInside (me:out;
85 S : Shape from TopoDS);
86 ---Purpose: remove shapes that are inside S from result.
87 -- S should be an object shape.
88 ---Warning: call it after Build()
91 S : Shape from TopoDS)
92 returns ListOfShape from TopTools;
93 ---Purpose: Returns the list of shapes modified from the shape <S>.
94 ---C++: return const &
98 S : Shape from TopoDS)
99 returns ListOfShape from TopTools;
100 ---Purpose: Returns the list of shapes generated from the shape <S>.
101 ---C++: return const &
105 S : Shape from TopoDS)
106 returns Boolean from Standard;
113 returns ListOfShape from TopTools;
114 ---C++: return const &
119 FillImageShape(me:out)
122 SplittedFaces (me:out)
125 SplittedWires (me:out)
128 SplitsAndSections (me:out)
131 ShellsAndSolids(me:out)
135 aS :Shape from TopoDS;
136 aLNS:out ListOfShape from TopTools)
140 Solid : Shape from TopoDS;
141 Shells: out ListOfShape from TopTools)
144 FindFacesInside (me:out;
145 S : Shape from TopoDS;
146 CheckClosed : Boolean from Standard= Standard_False;
147 All : Boolean from Standard= Standard_False)
148 returns Shape from TopoDS
152 S1,S2 : Shape from TopoDS)
153 returns Boolean from Standard is protected;
154 ---Purpose: Return True if the first vertex of S1 inside S2.
155 -- If S1.IsNull(), check infinite point against S2.
158 aShape : Shape from TopoDS)
159 returns Shape from TopoDS
162 --modified by NIZNHY-PKV Tue Feb 1 10:24:39 2005f
164 aS : Shape from TopoDS;
165 aLIms: out ListOfShape from TopTools)
167 --modified by NIZNHY-PKV Tue Feb 1 10:24:47 2005t
170 myDoneStep : ShapeEnum from TopAbs is protected; -- rebuilt level
171 myBuilder : Builder from BRep is protected;
173 myListShapes : ListOfShape from TopTools is protected; -- object shapes
174 myMapFaces : MapOfShape from TopTools is protected; -- object faces
175 myMapTools : MapOfShape from TopTools is protected; -- tool faces
176 myEqualEdges : MapOfShape from TopTools is protected; -- equal splits
177 myNewSection : MapOfShape from TopTools is protected; -- new secton edges
178 myClosedShapes : MapOfShape from TopTools is protected;
179 myWrappingSolid: MapOfShape from TopTools is protected; -- solids having other shapes inside
180 myFaceShapeMap : DataMapOfShapeShape from TopTools is protected; -- to find a shape by face
182 myInternalFaces: DataMapOfShapeShape from TopTools is protected; -- shape and its internal faces
183 myIntNotClFaces: DataMapOfShapeShape from TopTools is protected; -- internal but not closed
185 myImageShape : Image from BRepAlgo is protected;
187 -- avoid rebuilding twice commont part of solids
188 myAddedFacesMap: MapOfOrientedShape from TopTools is protected;
190 mySourceShapes : ListOfShape from TopTools is protected;
191 myLimit : ShapeEnum from TopAbs is protected;
192 myToolShapes : MapOfShape from TopTools is protected;
193 myObjShapes : MapOfShape from TopTools is protected;
194 myMapSIFC : DataMapOfShapeShape from TopTools is protected;
196 myGenerated : ListOfShape from TopTools is protected;
197 --modified by NIZNHY-PKV Mon Jan 24 09:45:10 2005f
198 myModifiedFaces: DataMapOfShapeListOfShape from TopTools is protected;
199 --modified by NIZNHY-PKV Mon Jan 24 09:45:14 2005t