7dc9ba680fdfbf063050022b67680c3de673cfab
[occt.git] / src / LocOpe / LocOpe_WiresOnShape.cdl
1 -- Created on: 1996-01-11
2 -- Created by: Jacques GOUSSARD
3 -- Copyright (c) 1996-1999 Matra Datavision
4 -- Copyright (c) 1999-2012 OPEN CASCADE SAS
5 --
6 -- The content of this file is subject to the Open CASCADE Technology Public
7 -- License Version 6.5 (the "License"). You may not use the content of this file
8 -- except in compliance with the License. Please obtain a copy of the License
9 -- at http://www.opencascade.org and read it completely before using this file.
10 --
11 -- The Initial Developer of the Original Code is Open CASCADE S.A.S., having its
12 -- main offices at: 1, place des Freres Montgolfier, 78280 Guyancourt, France.
13 --
14 -- The Original Code and all software distributed under the License is
15 -- distributed on an "AS IS" basis, without warranty of any kind, and the
16 -- Initial Developer hereby disclaims all such warranties, including without
17 -- limitation, any warranties of merchantability, fitness for a particular
18 -- purpose or non-infringement. Please see the License for the specific terms
19 -- and conditions governing the rights and limitations under the License.
20
21
22
23
24 class WiresOnShape from LocOpe inherits ProjectedWires from LocOpe
25
26         ---Purpose: 
27
28 uses Shape               from TopoDS,
29      Face                from TopoDS,
30      Wire                from TopoDS,
31      Compound            from TopoDS,
32      Edge                from TopoDS,
33      Vertex              from TopoDS,
34      DataMapOfShapeShape from TopTools,
35 --     DataMapIteratorOfDataMapOfShapeShape from TopTools
36      IndexedDataMapOfShapeShape from TopTools,
37      MapOfShape          from TopTools
38
39
40 is
41
42     Create(S: Shape from TopoDS)
43
44         returns mutable WiresOnShape from LocOpe;
45
46
47     Init(me: mutable; S: Shape from TopoDS)
48     
49         is static;
50
51
52     Bind(me: mutable; W: Wire from TopoDS;
53                       F: Face from TopoDS)
54                      
55         is static;
56
57     Bind(me: mutable; Comp: Compound from TopoDS;
58                       F:    Face from TopoDS)
59                      
60         is static;
61
62     Bind(me: mutable; E: Edge from TopoDS;
63                       F: Face from TopoDS)
64                       
65         is static;
66
67
68     Bind(me: mutable; EfromW: Edge from TopoDS;
69                       EonFace: Edge from TopoDS)
70                       
71         is static;
72
73
74     BindAll(me: mutable)
75     
76         is static;
77
78
79     IsDone(me)
80     
81         returns Boolean from Standard
82         ---C++: inline
83         is static;
84
85
86     InitEdgeIterator(me: mutable)
87     
88         ;
89
90
91     MoreEdge(me: mutable)
92         returns Boolean from Standard
93         ;
94
95
96     Edge(me: mutable)
97         returns Edge from TopoDS
98         ;
99
100
101     OnFace(me: mutable)
102         ---Purpose: Returns the face of the shape on which the current
103         --          edge is projected.
104         returns Face from TopoDS
105         ;
106
107     
108     OnEdge(me: mutable; E: out Edge from TopoDS)
109         ---Purpose: If the   current  edge is  projected  on  an edge,
110         --          returns <Standard_True> and sets the value of <E>.
111         --          Otherwise, returns <Standard_False>.
112         returns Boolean from Standard
113         ;
114
115
116     NextEdge(me: mutable)
117     
118         ;
119
120
121     OnVertex(me: mutable; Vwire :     Vertex from TopoDS;
122                           Vshape: out Vertex from TopoDS)
123                           
124         returns Boolean from Standard
125         ;
126
127
128     OnEdge(me: mutable; V: Vertex from TopoDS;
129                         E: out Edge from TopoDS;
130                         P: out Real from Standard)
131         ---Purpose: If the vertex <V> lies on  an edge of the original
132         --          shape,  returns     <Standard_True> and   sets the
133         --          concerned edge in  <E>,  and the parameter on  the
134         --          edge in <P>.
135         --          Else returns <Standard_False>.
136         returns Boolean from Standard
137         ;
138         
139     IsFaceWithSection(me; aFace : Shape from TopoDS)
140         ---Purpose: tells is the face to be split by section or not
141         ---C++: inline
142         returns Boolean from Standard
143         ;
144
145
146 fields
147
148     myShape : Shape                      from TopoDS;
149     myMapEF : IndexedDataMapOfShapeShape from TopTools;
150     myFacesWithSection : MapOfShape      from TopTools;
151     myMap   : DataMapOfShapeShape        from TopTools;
152     myDone  : Boolean                    from Standard;
153     myIndex : Integer                    from Standard;
154
155 end WiresOnShape;