7fd59977 |
1 | -- File: IntTools_FaceFace.cdl |
2 | -- Created: Thu Nov 23 14:52:53 2000 |
3 | -- Author: Michael KLOKOV |
4 | -- <mkk@redfox.nnov.matra-dtv.fr> |
5 | ---Copyright: Matra Datavision 2000 |
6 | |
7 | class FaceFace from IntTools |
8 | |
9 | ---Purpose: This class provides the intersection of |
10 | --- face's underlying surfaces. |
11 | |
12 | uses |
13 | |
14 | Face from TopoDS, |
15 | SequenceOfCurves from IntTools, |
16 | Intersection from IntPatch, |
17 | LineConstructor from IntTools, |
18 | HSurface from GeomAdaptor, |
19 | TopolTool from Adaptor3d, |
20 | SequenceOfPntOn2Faces from IntTools, |
21 | --amv |
22 | ListOfPntOn2S from IntSurf |
23 | |
24 | raises NotDone from StdFail |
25 | is |
26 | |
27 | Create |
28 | returns FaceFace from IntTools; |
29 | ---Purpose: |
30 | --- Empty constructor. |
31 | --- |
32 | |
33 | |
34 | SetParameters(me: in out; |
35 | ApproxCurves : Boolean from Standard; |
36 | ComputeCurveOnS1: Boolean from Standard; |
37 | ComputeCurveOnS2: Boolean from Standard; |
38 | ApproximationTolerance: Real from Standard); |
39 | ---Purpose: |
40 | --- Modifier |
41 | --- |
42 | |
43 | Perform(me: in out; |
44 | F1: Face from TopoDS; |
45 | F2: Face from TopoDS); |
46 | ---Purpose: |
47 | --- Intersects underliing surfaces of F1 and F2 |
48 | --- Use sum of tolerance of F1 and F2 as intersection |
49 | --- criteria |
50 | --- |
51 | |
52 | IsDone(me) |
53 | returns Boolean from Standard; |
54 | ---Purpose: |
55 | --- Returns True if the intersection was successful |
56 | --- |
57 | |
58 | Lines(me) |
59 | returns SequenceOfCurves from IntTools; |
60 | ---C++: return const& |
61 | ---Purpose: |
62 | --- Returns sequence of 3d curves as result of intersection |
63 | --- |
64 | |
65 | Points(me) |
66 | returns SequenceOfPntOn2Faces from IntTools; |
67 | ---C++: return const& |
68 | ---Purpose: |
69 | --- Returns sequence of 3d curves as result of intersection |
70 | --- |
71 | |
72 | TolReached3d(me) |
73 | returns Real from Standard; |
74 | ---Purpose: |
75 | --- Returns tolerance reached during approximation. |
76 | --- If approximation was not done, returns zero. |
77 | --- |
78 | |
79 | TolReached2d(me) |
80 | returns Real from Standard; |
81 | ---Purpose: |
82 | --- Returns tolerance reached during approximation. |
83 | --- If approximation was not done, returns zero. |
84 | --- |
85 | |
86 | Face1 (me) |
87 | returns Face from TopoDS; |
88 | ---C++: return const& |
89 | ---Purpose: |
90 | --- Returns first of processed faces |
91 | --- |
92 | |
93 | Face2 (me) |
94 | returns Face from TopoDS; |
95 | ---C++: return const& |
96 | ---Purpose: |
97 | --- Returns second of processed faces |
98 | --- |
99 | |
100 | TangentFaces (me) |
101 | returns Boolean from Standard; |
102 | ---Purpose: |
103 | --- Returns True if faces are tangent |
104 | --- |
105 | |
106 | PrepareLines3D (me:out); |
107 | ---Purpose: |
108 | --- Provides post-processing the result lines, |
109 | --- which includes spliting closed curves. |
110 | --- |
111 | --amv |
112 | SetList (me: in out; ListOfPnts: in out ListOfPntOn2S from IntSurf); |
113 | |
114 | ---------------------------------------------------------- |
115 | -- private block |
116 | ---------------------------------------------------------- |
117 | MakeCurve(me: in out; Index : Integer from Standard; |
118 | D1 : TopolTool from Adaptor3d; |
119 | D2 : TopolTool from Adaptor3d) |
120 | is protected; |
121 | |
122 | --modified by NIZNHY-PKV Tue Jul 10 10:01:27 2007f |
123 | ComputeTolReached3d(me:out) |
124 | is protected; |
125 | --modified by NIZNHY-PKV Tue Jul 10 10:01:30 2007t |
126 | |
127 | fields |
128 | |
129 | myIsDone : Boolean from Standard; |
130 | myIntersector : Intersection from IntPatch; |
131 | myLConstruct : LineConstructor from IntTools; |
132 | myHS1 : HSurface from GeomAdaptor; |
133 | myHS2 : HSurface from GeomAdaptor; |
134 | myNbrestr : Integer from Standard; |
135 | |
136 | myTolReached2d : Real from Standard; |
137 | myTolReached3d : Real from Standard; |
138 | |
139 | myApprox : Boolean from Standard; |
140 | myApprox1 : Boolean from Standard; |
141 | myApprox2 : Boolean from Standard; |
142 | myTolApprox : Real from Standard; |
143 | |
144 | mySeqOfCurve : SequenceOfCurves from IntTools; |
145 | |
146 | myTangentFaces: Boolean from Standard; |
147 | myFace1 : Face from TopoDS; |
148 | myFace2 : Face from TopoDS; |
149 | myPnts : SequenceOfPntOn2Faces from IntTools; |
150 | |
151 | --amv |
152 | myListOfPnts : ListOfPntOn2S from IntSurf; |
153 | |
154 | end FaceFace from IntTools; |
155 | |