1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
|
-- File: BOP_WireEdgeSet.cdl
-- Created: Wed Jun 16 11:52:45 1993
-- Author: Jean Yves LEBEY
-- <jyl@zerox>
---Copyright: Matra Datavision 1993
class WireEdgeSet from BOP inherits ShapeSet from BOP
---Purpose: The class containing data and methods
-- for a set of edges and wires
--
-- Bound is a wire,
-- Boundelement is an edge.
--
-- The ShapeSet stores :
-- - a list of wire (bounds),
-- - a list of edge (boundelements) to start reconstructions,
-- - a map of vertex giving the list of edge incident to a vertex.
uses
Orientation from TopAbs,
Shape from TopoDS,
Face from TopoDS,
Edge from TopoDS,
Vertex from TopoDS,
ListOfShape from TopTools,
Pnt2d from gp,
Vec2d from gp
is
Create
returns WireEdgeSet from BOP;
---Purpose:
--- Empty constructor;
---
Create (F: Face from TopoDS)
returns WireEdgeSet from BOP;
---Purpose:
--- Creates a WES to build edges connected by vertices
--- on face F. Edges of the WireEdgeSet must have a representation
--- on surface of face F.
---
Initialize(me:out;
F: Face from TopoDS);
---Purpose:
--- Initialize a WES to build edges connected by vertices
--- on face F. Edges of the WireEdgeSet must have a representation
--- on surface of face F.
---
Face(me)
returns Face from TopoDS;
---C++: return const &
---Purpose:
--- Selector
---
AddShape(me:out;
S:Shape from TopoDS)
is redefined;
---Purpose:
--- See in base class, please
---
AddStartElement(me:out;
S:Shape from TopoDS)
is redefined;
---Purpose:
--- See in base class, please
---
AddElement(me:out;
S:Shape from TopoDS)
is redefined;
---Purpose:
--- See in base class, please
---
InitNeighbours(me:out;
E:Shape from TopoDS)
is redefined;
---Purpose:
--- Internal usage
---
FindNeighbours(me:out)
is redefined;
---Purpose:
--- Build the list of neighbour edges of edge myCurrentShape
--- Initialize iterator of neighbour edges to edge myCurrentShape
---
MakeNeighboursList(me:out;
E,V:Shape from TopoDS)
returns ListOfShape from TopTools
is redefined;
---C++: return const &
VertexConnectsEdges(me;
V,E1,E2:Shape from TopoDS;
O1,O2:out Orientation from TopAbs)
returns Boolean from Standard
is private;
---Purpose:
--- Indicates whether vertex V is a good connexity vertex between
--- edges E1 and E2.
--- i.e, returns True if V is shared by E1 and E2 and if V has different
--- orientations on E1 and E2.
--- If V is shared by E1 and E2, returns the orientation of V on E1 and E2
---
VertexConnectsEdgesClosing(me;
V,E1,E2:Shape from TopoDS)
returns Boolean from Standard
is private;
---Purpose:
--- Internal usage
---
NbClosingShapes(me;
L:ListOfShape from TopTools)
returns Integer from Standard
is private;
---Purpose:
--- Internal usage
---
LocalD1(me;
F : Face from TopoDS;
E : Edge from TopoDS;
V : Vertex from TopoDS;
P2: out Pnt2d from gp;
V2: out Vec2d from gp)
is private;
---Purpose:
--- Internal usage
---
IsClosed(me;
E:Shape from TopoDS)
returns Boolean from Standard
is private;
---Purpose:
--- indicates if the edge <E> is a closing edge of myFace
--- Internal usage
---
IsUClosed(me;
E:Shape from TopoDS)
returns Boolean from Standard
is private;
---Purpose:
--- indicates if the edge <E> is a closing edge on U of myFace
--- Internal usage
---
IsVClosed(me;
E:Shape from TopoDS)
returns Boolean from Standard
is private;
---Purpose:
--- indicates if the edge <E> is a closing edge on V of myFace
--- Internal usage
---
IsUVISO(myclass;
E:Edge from TopoDS;
F:Face from TopoDS;
uiso,viso:out Boolean from Standard);
---Purpose:
--- Internal usage
---
RemoveEdgeFromWES (me:out;
aE : Edge from TopoDS);
---Purpose:
--- Removes the edge aE from the WES
---
KeptTwice(me;
aE : Edge from TopoDS)
returns Boolean from Standard;
---Purpose:
--- Returns TRUE if the edge aE has been kept twice
--- in the WES
---
fields
myFace:Face from TopoDS;
myDEBVertexIndex:Integer from Standard;
end WireEdgeSet from BOP;
|