Salome HOME
05bbf3e8bd06b37558ad1764d07f7d0dcf0bca04
[modules/geom.git] / src / PARTITION / Partition_Loop.cdl
1 --  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
2 --
3 --  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
4 --  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
5 --
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.
10 --
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.
15 --
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
19 --
20 --  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
21 --
22 --  File   : Partition_Loop.cdl
23 --  Author : Benedicte MARTIN
24 --  Module : GEOM
25
26 class Loop from Partition
27
28         ---Purpose: Builds the loops from a set of edges on a face.
29
30 uses
31
32     Face                      from TopoDS,
33     Edge                      from TopoDS,
34     ListOfShape               from TopTools,
35     DataMapOfShapeListOfShape from TopTools
36
37 is
38
39     Create;
40     
41     Init (me : in out; F : Face from TopoDS)
42         ---Purpose: Init with <F> the set of edges must have
43         --          pcurves on <F>. 
44     is static;
45     
46     AddEdge (me : in out; E  : in out Edge from TopoDS;
47                           LV : ListOfShape from TopTools)
48         ---Purpose: Add E with <LV>. <E> will be copied and trim 
49         --          by vertices in <LV>.
50     is static;
51     
52     AddConstEdge  (me : in out; E : Edge from TopoDS)
53         ---Purpose: Add <E> as const edge, E can be in the result.
54     is static;
55
56     Perform(me : in out)
57         ---Purpose: Make loops.
58     is static;
59     
60     NewWires (me)       
61         ---Purpose: Returns the list of wires performed. 
62         --          can be an empty list.
63         ---C++: return const &
64     returns ListOfShape from TopTools;
65         
66     WiresToFaces (me : in out)
67         ---Purpose:  Build faces from the wires result.
68     is static;
69     
70     NewFaces (me)
71         ---Purpose: Returns the list of faces.
72         ---Warning: The method <WiresToFaces> as to be called before.
73         --          can be an empty list.
74         ---C++: return const &
75     returns ListOfShape from TopTools;
76
77     
78 fields
79
80     myFace       : Face                      from TopoDS;
81     myConstEdges : ListOfShape               from TopTools;
82     myNewWires   : ListOfShape               from TopTools;
83     myNewFaces   : ListOfShape               from TopTools;
84          
85 end Loop;