0024510: Remove unused local variables
[occt.git] / src / IntCurve / IntCurve_IntCurveCurveGen.cdl
CommitLineData
b311480e 1-- Created on: 1992-05-22
2-- Created by: Jacques GOUSSARD
3-- Copyright (c) 1992-1999 Matra Datavision
973c2be1 4-- Copyright (c) 1999-2014 OPEN CASCADE SAS
b311480e 5--
973c2be1 6-- This file is part of Open CASCADE Technology software library.
b311480e 7--
973c2be1 8-- This library is free software; you can redistribute it and / or modify it
9-- under the terms of the GNU Lesser General Public version 2.1 as published
10-- by the Free Software Foundation, with special exception defined in the file
11-- OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
12-- distribution for complete text of the license and disclaimer of any warranty.
b311480e 13--
973c2be1 14-- Alternatively, this file may be used under the terms of Open CASCADE
15-- commercial license or contractual agreement.
7fd59977 16
17generic class IntCurveCurveGen from IntCurve (
18 TheCurve as any;
19 TheCurveTool as any) -- as CurveTool from IntCurve(TheCurve)
20
21 ---Purpose: Provides the algorithm to intersect two 2D-curves.
22 -- The curves may be parametric curves or Conic (see
23 -- the template class CurveTool).
24 --
25 -- Note: The exception ConstructionError is raised in
26 -- constructors or in Perform methods when a domain
27 -- (Domain from IntRes2d) is not correct, i-e when
28 -- the method TheType returns GeomAbs_Circle or
29 -- GeomAbs_Ellipsei and the corresponding domain is
30 -- not closed (use the SetEquivalentParameters for a
31 -- domain on a circle or an ellipse) or when the
32 -- method TheType returns GeomAbs_Other and the
33 -- domain of the curve is not bounded
34 -- (HasFirstPoint() && HasLastPoint() return True).
35 ---Level: Advanced
36
37inherits Intersection from IntRes2d
38
39uses Domain from IntRes2d,
40 IntConicConic from IntCurve,
41 IConicTool from IntCurve,
42 Array1OfReal from TColStd
43
44raises ConstructionError from Standard
45
46
47 class TheProjPCur instantiates ProjPCurGen from IntCurve(
48 TheCurve,
49 TheCurveTool);
50
51 class TheIntConicCurve instantiates IntConicCurveGen from IntCurve
52 (IConicTool from IntCurve,
53 TheCurve,
54 TheCurveTool,
55 TheProjPCur);
56
57 class IntConicCurve instantiates UserIntConicCurveGen from IntCurve
58 (IConicTool from IntCurve,
59 TheCurve,
60 TheCurveTool,
61 TheIntConicCurve);
62
63 class TheIntPCurvePCurve instantiates IntPolyPolyGen from IntCurve
64 (TheCurve,
65 TheCurveTool,
66 TheProjPCur);
67is
68
69 Create
70
71 ---Purpose: Empty constructor.
72 returns IntCurveCurveGen from IntCurve;
73 ---C++: inline
74
75
76 Create (C: TheCurve; TolConf,Tol: Real from Standard)
77
78 ---Purpose: Self Intersection of a curve
79 ---C++: inline
80 returns IntCurveCurveGen from IntCurve
81 raises ConstructionError from Standard;
82
83
84 Create (C: TheCurve; D: Domain from IntRes2d;
85 TolConf,Tol: Real from Standard)
86
87 ---Purpose: Self Intersection of a curve with a domain.
88 ---C++: inline
89 returns IntCurveCurveGen from IntCurve
90 raises ConstructionError from Standard;
91
92
93 Create (C1: TheCurve; C2: TheCurve;
94 TolConf,Tol: Real from Standard)
95
96 ---Purpose: Intersection between 2 curves.
97 ---C++: inline
98 returns IntCurveCurveGen from IntCurve
99 raises ConstructionError from Standard;
100
101
102 Create (C1: TheCurve; D1: Domain from IntRes2d;
103 C2: TheCurve;
104 TolConf,Tol: Real from Standard)
105
106 ---Purpose: Intersection between 2 curves.
107 ---C++: inline
108 returns IntCurveCurveGen from IntCurve
109 raises ConstructionError from Standard;
110
111
112 Create (C1: TheCurve;
113 C2: TheCurve; D2: Domain from IntRes2d;
114 TolConf,Tol: Real from Standard)
115
116 ---Purpose: Intersection between 2 curves.
117 ---C++: inline
118 returns IntCurveCurveGen from IntCurve
119 raises ConstructionError from Standard;
120
121
122
123 Create (C1: TheCurve; D1: Domain from IntRes2d;
124 C2: TheCurve; D2: Domain from IntRes2d;
125 TolConf,Tol: Real from Standard)
126
127 ---Purpose: Intersection between 2 curves.
128 ---C++: inline
129 returns IntCurveCurveGen from IntCurve
130 raises ConstructionError from Standard;
131
132
133
134 Perform (me: in out;
135 C1: TheCurve; D1: Domain from IntRes2d;
136 C2: TheCurve; D2: Domain from IntRes2d;
137 TolConf,Tol: Real from Standard)
138 ---Purpose: Intersection between 2 curves.
139
140 raises ConstructionError from Standard
141 is static;
142
143 Perform (me: in out;
144 C1: TheCurve;
145 C2: TheCurve;
146 TolConf,Tol: Real from Standard)
147
148 ---Purpose: Intersection between 2 curves.
149 ---C++: inline
150 raises ConstructionError from Standard
151 is static;
152
153 Perform (me: in out;
154 C1: TheCurve; D1: Domain from IntRes2d;
155 TolConf,Tol: Real from Standard)
156
157 ---Purpose: Intersection between 2 curves.
158 raises ConstructionError from Standard
159 is static;
160
161 Perform (me: in out;
162 C1: TheCurve;
163 TolConf,Tol: Real from Standard)
164
165 ---Purpose: Intersection between 2 curves.
166
167 raises ConstructionError from Standard
168 is static;
169
170 Perform (me: in out;
171 C1: TheCurve; D1: Domain from IntRes2d;
172 C2: TheCurve;
173 TolConf,Tol: Real from Standard)
174 ---C++: inline
175 ---Purpose: Intersection between 2 curves.
176
177 raises ConstructionError from Standard
178 is static;
179
180 Perform (me: in out;
181 C1: TheCurve;
182 C2: TheCurve; D2: Domain from IntRes2d;
183 TolConf,Tol: Real from Standard)
184 ---C++: inline
185 ---Purpose: Intersection between 2 curves.
186
187 raises ConstructionError from Standard
188 is static;
189
190
191 ComputeDomain(me; C1: TheCurve; TolDomain: Real from Standard)
192
193 ---Purpose: Create a domain from a curve
194 returns Domain from IntRes2d
195 is static;
196
197
198
199 InternalPerform(me: in out;
200 C1: TheCurve; D1: Domain from IntRes2d;
201 C2: TheCurve; D2: Domain from IntRes2d;
202 TolConf,Tol: Real from Standard;
203 Composite: Boolean from Standard)
204
205 ---Purpose: Intersection between 2 curves.
206
207 raises ConstructionError from Standard
208 is static private;
de8791ee 209
210
211
212 InternalCompositePerform_noRecurs(me: in out;
213 NbInterC1: Integer from Standard;
214 C1: TheCurve;
215 NumInterC1: Integer from Standard;
216 Tab1: Array1OfReal from TColStd;
217 D1: Domain from IntRes2d;
218 NbInterC2: Integer from Standard;
219 C2: TheCurve;
220 NumInterC2: Integer from Standard;
221 Tab2: Array1OfReal from TColStd;
222 D2: Domain from IntRes2d;
223 TolConf,Tol: Real from Standard)
224
225 ---Purpose: Part of InternalCompositePerform function
226
227 raises ConstructionError from Standard
228 is static private;
229
230
7fd59977 231
232 InternalCompositePerform(me: in out;
233 C1: TheCurve; D1: Domain from IntRes2d;
234 N1,NB1: Integer from Standard;
235 Tab1: Array1OfReal from TColStd;
236 C2: TheCurve; D2: Domain from IntRes2d;
237 N2,NB2: Integer from Standard;
238 Tab2: Array1OfReal from TColStd;
239 TolConf,Tol: Real from Standard;
240 Composite: Boolean from Standard)
241
242 ---Purpose: Intersection between 2 curves.
243
244 raises ConstructionError from Standard
245 is static private;
246
247
248fields
249
250 param1inf : Real from Standard;
251 param1sup : Real from Standard;
252 param2inf : Real from Standard;
253 param2sup : Real from Standard;
254 intconiconi : IntConicConic from IntCurve;
255 intconicurv : TheIntConicCurve;
256 intcurvcurv : TheIntPCurvePCurve;
257
258end IntCurveCurveGen;
259
260
261
262
263