1 -- GEOM PARTITION : partition algorithm
3 -- Copyright (C) 2003 CEA/DEN, EDF R&D
7 -- File : Partition_Loop2d.cdl
8 -- Author : Benedicte MARTIN
11 class Loop2d from Partition
13 ---Purpose: Builds the loops from a set of edges on a face.
14 -- It works in supposition that all constant edges
15 -- are split edges of an initialization face and all
16 -- section edges are new on the face
20 Orientation from TopAbs,
21 Boolean from Standard,
26 ListOfShape from TopTools,
27 DataMapOfShapeListOfShape from TopTools,
28 MapOfShape from TopTools
33 Init (me : in out; F : Face from TopoDS)
34 ---Purpose: Init with <F> the set of edges must have
38 AddConstEdge (me : in out; E : Edge from TopoDS)
39 ---Purpose: Add <E> as unique edge in the result.
42 AddSectionEdge (me : in out; E : Edge from TopoDS)
43 ---Purpose: Add <E> as double edge in the result.
47 ---Purpose: Make loops.
51 ---Purpose: Returns the list of wires performed.
52 -- can be an empty list.
53 ---C++: return const &
54 returns ListOfShape from TopTools;
56 WiresToFaces (me : in out; EdgeImage : Image from BRepAlgo)
57 ---Purpose: Build faces from the wires result.
58 -- <EdgeImage> serves to find original edge by new
63 ---Purpose: Returns the list of faces.
64 ---Warning: The method <WiresToFaces> as to be called before.
65 -- can be an empty list.
66 ---C++: return const &
67 returns ListOfShape from TopTools;
72 myFace : Face from TopoDS;
73 myFaceOri : Orientation from TopAbs;
74 myConstEdges : ListOfShape from TopTools;
75 myNewWires : ListOfShape from TopTools;
76 myNewFaces : ListOfShape from TopTools;
78 -- internal wires do not contain constant edges
79 myInternalWL : ListOfShape from TopTools;
81 mySectionEdges : MapOfShape from TopTools;