1 -- File: NMTAlgo_Splitter.cdl
2 -- Created: Tue Jan 27 15:09:45 2004
3 -- Author: Peter KURNEV
5 ---Copyright: Matra Datavision 2004
8 class Splitter from NMTAlgo
9 inherits Builder from NMTAlgo
15 ShapeEnum from TopAbs,
20 MapOfOrientedShape from TopTools,
21 IndexedMapOfShape from TopTools,
22 DataMapOfShapeShape from TopTools,
23 ListOfShape from TopTools,
24 MapOfShape from TopTools,
28 DSFiller from NMTTools
34 returns Splitter from NMTAlgo;
35 ---C++: alias "Standard_EXPORT virtual ~NMTAlgo_Splitter();"
38 S : Shape from TopoDS)
42 S : Shape from TopoDS)
49 aLimit:ShapeEnum from TopAbs=TopAbs_SHAPE)
52 ComputeWithFiller(me:out;
53 aDSF: DSFiller from NMTTools)
57 KeepShapesInside (me:out;
58 S : Shape from TopoDS);
59 ---Purpose: remove shapes that are outside of S from result.
60 -- S should be an object shape.
61 ---Warning: call it after Build()
63 RemoveShapesInside (me:out;
64 S : Shape from TopoDS);
65 ---Purpose: remove shapes that are inside S from result.
66 -- S should be an object shape.
67 ---Warning: call it after Build()
70 S : Shape from TopoDS)
71 returns ListOfShape from TopTools;
72 ---Purpose: Returns the list of shapes modified from the shape <S>.
73 ---C++: return const &
77 S : Shape from TopoDS)
78 returns ListOfShape from TopTools;
79 ---Purpose: Returns the list of shapes generated from the shape <S>.
80 ---C++: return const &
84 S : Shape from TopoDS)
85 returns Boolean from Standard;
92 returns ListOfShape from TopTools;
93 ---C++: return const &
98 FillImageShape(me:out)
101 SplittedFaces (me:out)
104 SplittedWires (me:out)
107 SplitsAndSections (me:out)
110 ShellsAndSolids(me:out)
114 aS :Shape from TopoDS;
115 aLNS:out ListOfShape from TopTools)
119 Solid : Shape from TopoDS;
120 Shells: out ListOfShape from TopTools)
123 FindFacesInside (me:out;
124 S : Shape from TopoDS;
125 CheckClosed : Boolean from Standard= Standard_False;
126 All : Boolean from Standard= Standard_False)
127 returns Shape from TopoDS
131 S1,S2 : Shape from TopoDS)
132 returns Boolean from Standard is protected;
133 ---Purpose: Return True if the first vertex of S1 inside S2.
134 -- If S1.IsNull(), check infinite point against S2.
137 aShape : Shape from TopoDS)
138 returns Shape from TopoDS
142 myDoneStep : ShapeEnum from TopAbs is protected; -- rebuilt level
143 myBuilder : Builder from BRep is protected;
145 myListShapes : ListOfShape from TopTools is protected; -- object shapes
146 myMapFaces : MapOfShape from TopTools is protected; -- object faces
147 myMapTools : MapOfShape from TopTools is protected; -- tool faces
148 myEqualEdges : MapOfShape from TopTools is protected; -- equal splits
149 myNewSection : MapOfShape from TopTools is protected; -- new secton edges
150 myClosedShapes : MapOfShape from TopTools is protected;
151 myWrappingSolid: MapOfShape from TopTools is protected; -- solids having other shapes inside
152 myFaceShapeMap : DataMapOfShapeShape from TopTools is protected; -- to find a shape by face
154 myInternalFaces: DataMapOfShapeShape from TopTools is protected; -- shape and its internal faces
155 myIntNotClFaces: DataMapOfShapeShape from TopTools is protected; -- internal but not closed
157 myImageShape : Image from BRepAlgo is protected;
159 -- avoid rebuilding twice commont part of solids
160 myAddedFacesMap: MapOfOrientedShape from TopTools is protected;
162 mySourceShapes : ListOfShape from TopTools is protected;
163 myLimit : ShapeEnum from TopAbs is protected;
164 myToolShapes : MapOfShape from TopTools is protected;
165 myObjShapes : MapOfShape from TopTools is protected;
166 myMapSIFC : DataMapOfShapeShape from TopTools is protected;
168 myGenerated : ListOfShape from TopTools is protected;