blob: 59b4fd486fc3e0aa956783c52ccaa2ad3ff3bb1a (
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
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
|
-- File: IntTools_FaceFace.cdl
-- Created: Thu Nov 23 14:52:53 2000
-- Author: Michael KLOKOV
-- <mkk@redfox.nnov.matra-dtv.fr>
---Copyright: Matra Datavision 2000
class FaceFace from IntTools
---Purpose: This class provides the intersection of
--- face's underlying surfaces.
uses
Face from TopoDS,
SequenceOfCurves from IntTools,
Intersection from IntPatch,
LineConstructor from IntTools,
HSurface from GeomAdaptor,
TopolTool from Adaptor3d,
SequenceOfPntOn2Faces from IntTools,
--amv
ListOfPntOn2S from IntSurf
raises NotDone from StdFail
is
Create
returns FaceFace from IntTools;
---Purpose:
--- Empty constructor.
---
SetParameters(me: in out;
ApproxCurves : Boolean from Standard;
ComputeCurveOnS1: Boolean from Standard;
ComputeCurveOnS2: Boolean from Standard;
ApproximationTolerance: Real from Standard);
---Purpose:
--- Modifier
---
Perform(me: in out;
F1: Face from TopoDS;
F2: Face from TopoDS);
---Purpose:
--- Intersects underliing surfaces of F1 and F2
--- Use sum of tolerance of F1 and F2 as intersection
--- criteria
---
IsDone(me)
returns Boolean from Standard;
---Purpose:
--- Returns True if the intersection was successful
---
Lines(me)
returns SequenceOfCurves from IntTools;
---C++: return const&
---Purpose:
--- Returns sequence of 3d curves as result of intersection
---
Points(me)
returns SequenceOfPntOn2Faces from IntTools;
---C++: return const&
---Purpose:
--- Returns sequence of 3d curves as result of intersection
---
TolReached3d(me)
returns Real from Standard;
---Purpose:
--- Returns tolerance reached during approximation.
--- If approximation was not done, returns zero.
---
TolReached2d(me)
returns Real from Standard;
---Purpose:
--- Returns tolerance reached during approximation.
--- If approximation was not done, returns zero.
---
Face1 (me)
returns Face from TopoDS;
---C++: return const&
---Purpose:
--- Returns first of processed faces
---
Face2 (me)
returns Face from TopoDS;
---C++: return const&
---Purpose:
--- Returns second of processed faces
---
TangentFaces (me)
returns Boolean from Standard;
---Purpose:
--- Returns True if faces are tangent
---
--modified by NIZNHY-PKV Fri Sep 16 07:44:22 2011
PrepareLines3D (me:out;
bToSplit: Boolean from Standard=Standard_True);
--PrepareLines3D (me:out);
---Purpose:
--- Provides post-processing the result lines.
--- <bToSplit> - the flag.
-- In case of <bToSplit> is true the closed 3D-curves will be splitted
-- on parts.
-- In case of <bToSplit> is false the closed 3D-curves remain untouched.
SetList (me: in out; ListOfPnts: in out ListOfPntOn2S from IntSurf);
----------------------------------------------------------
-- private block
----------------------------------------------------------
MakeCurve(me: in out; Index : Integer from Standard;
D1 : TopolTool from Adaptor3d;
D2 : TopolTool from Adaptor3d)
is protected;
ComputeTolReached3d(me:out)
is protected;
fields
myIsDone : Boolean from Standard;
myIntersector : Intersection from IntPatch;
myLConstruct : LineConstructor from IntTools;
myHS1 : HSurface from GeomAdaptor;
myHS2 : HSurface from GeomAdaptor;
myNbrestr : Integer from Standard;
myTolReached2d : Real from Standard;
myTolReached3d : Real from Standard;
myApprox : Boolean from Standard;
myApprox1 : Boolean from Standard;
myApprox2 : Boolean from Standard;
myTolApprox : Real from Standard;
mySeqOfCurve : SequenceOfCurves from IntTools;
myTangentFaces: Boolean from Standard;
myFace1 : Face from TopoDS;
myFace2 : Face from TopoDS;
myPnts : SequenceOfPntOn2Faces from IntTools;
--amv
myListOfPnts : ListOfPntOn2S from IntSurf;
end FaceFace from IntTools;
|