blob: 26fc3bbfc68605365a0bf6237ce4fba6a84009c1 (
plain)
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
|
-- File: ShapeFix_EdgeConnect.cdl
-- Created: Tue May 11 11:27:03 1999
-- Author: Sergei ZERTCHANINOV
-- <szv@nnov>
---Copyright: Matra Datavision 1999
class EdgeConnect from ShapeFix
---Purpose : Makes vertices to be shared to connect edges,
-- updates positions and tolerances for shared vertices.
-- Accepts edges bounded by two vertices each.
uses
DataMapOfShapeShape from TopTools,
DataMapOfShapeListOfShape from TopTools,
Edge from TopoDS, Shape from TopoDS
is
Create returns EdgeConnect from ShapeFix;
Add (me : in out; aFirst : Edge from TopoDS; aSecond : Edge from TopoDS);
---Purpose : Adds information on connectivity between start vertex
-- of second edge and end vertex of first edge,
-- taking edges orientation into account
Add (me : in out; aShape : Shape from TopoDS);
---Purpose : Adds connectivity information for the whole shape.
-- Note: edges in wires must be well ordered
-- Note: flag Closed should be set for closed wires
Build (me : in out);
---Purpose : Builds shared vertices, updates their positions and tolerances
Clear (me : in out);
---Purpose : Clears internal data structure
fields
myVertices : DataMapOfShapeShape from TopTools; -- Map of pairs (vertex, shared)
myLists : DataMapOfShapeListOfShape from TopTools; -- Map of pairs (shared, list of vertices/edges)
end EdgeConnect;
|