4111f0257c1e5121595d60c3dcc53700c28d27a8
[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      Edge                from TopoDS,
32      Vertex              from TopoDS,
33      DataMapOfShapeShape from TopTools,
34 --     DataMapIteratorOfDataMapOfShapeShape from TopTools
35      IndexedDataMapOfShapeShape from TopTools
36
37
38 is
39
40     Create(S: Shape from TopoDS)
41
42         returns mutable WiresOnShape from LocOpe;
43
44
45     Init(me: mutable; S: Shape from TopoDS)
46     
47         is static;
48
49
50     Bind(me: mutable; W: Wire from TopoDS;
51                       F: Face from TopoDS)
52                      
53         is static;
54
55
56     Bind(me: mutable; E: Edge from TopoDS;
57                       F: Face from TopoDS)
58                       
59         is static;
60
61
62     Bind(me: mutable; EfromW: Edge from TopoDS;
63                       EonFace: Edge from TopoDS)
64                       
65         is static;
66
67
68     BindAll(me: mutable)
69     
70         is static;
71
72
73     IsDone(me)
74     
75         returns Boolean from Standard
76         ---C++: inline
77         is static;
78
79
80     InitEdgeIterator(me: mutable)
81     
82         ;
83
84
85     MoreEdge(me: mutable)
86         returns Boolean from Standard
87         ;
88
89
90     Edge(me: mutable)
91         returns Edge from TopoDS
92         ;
93
94
95     OnFace(me: mutable)
96         ---Purpose: Returns the face of the shape on which the current
97         --          edge is projected.
98         returns Face from TopoDS
99         ;
100
101     
102     OnEdge(me: mutable; E: out Edge from TopoDS)
103         ---Purpose: If the   current  edge is  projected  on  an edge,
104         --          returns <Standard_True> and sets the value of <E>.
105         --          Otherwise, returns <Standard_False>.
106         returns Boolean from Standard
107         ;
108
109
110     NextEdge(me: mutable)
111     
112         ;
113
114
115     OnVertex(me: mutable; Vwire :     Vertex from TopoDS;
116                           Vshape: out Vertex from TopoDS)
117                           
118         returns Boolean from Standard
119         ;
120
121
122     OnEdge(me: mutable; V: Vertex from TopoDS;
123                         E: out Edge from TopoDS;
124                         P: out Real from Standard)
125         ---Purpose: If the vertex <V> lies on  an edge of the original
126         --          shape,  returns     <Standard_True> and   sets the
127         --          concerned edge in  <E>,  and the parameter on  the
128         --          edge in <P>.
129         --          Else returns <Standard_False>.
130         returns Boolean from Standard
131         ;
132
133
134 fields
135
136     myShape : Shape                      from TopoDS;
137     myMapEF : IndexedDataMapOfShapeShape from TopTools;
138     myMap   : DataMapOfShapeShape        from TopTools;
139     myDone  : Boolean                    from Standard;
140     myIndex : Integer                    from Standard;
141
142 end WiresOnShape;