0024800: Point of intersection was not found for 2d offset curve.
[occt.git] / src / Adaptor2d / Adaptor2d_Curve2d.cxx
1 // Created on: 1993-07-01
2 // Created by: Bruno DUMORTIER
3 // Copyright (c) 1993-1999 Matra Datavision
4 // Copyright (c) 1999-2014 OPEN CASCADE SAS
5 //
6 // This file is part of Open CASCADE Technology software library.
7 //
8 // This library is free software; you can redistribute it and/or modify it under
9 // the terms of the GNU Lesser General Public License 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.
13 //
14 // Alternatively, this file may be used under the terms of Open CASCADE
15 // commercial license or contractual agreement.
16
17 #include <Adaptor2d_Curve2d.ixx>
18 #include <Standard_NotImplemented.hxx>
19
20 void Adaptor2d_Curve2d::Delete()
21 {}
22
23 //=======================================================================
24 //function : FirstParameter
25 //purpose  : 
26 //=======================================================================
27
28 Standard_Real Adaptor2d_Curve2d::FirstParameter() const 
29 {  
30   Standard_NotImplemented::Raise("Adaptor2d_Curve2d::FirstParameter");
31   return 0.;
32 }
33
34
35 //=======================================================================
36 //function : LastParameter
37 //purpose  : 
38 //=======================================================================
39
40 Standard_Real Adaptor2d_Curve2d::LastParameter() const 
41 {
42   Standard_NotImplemented::Raise("Adaptor2d_Curve2d::LastParameter");
43   return 0.;
44 }
45
46
47 //=======================================================================
48 //function : Continuity
49 //purpose  : 
50 //=======================================================================
51
52 GeomAbs_Shape Adaptor2d_Curve2d::Continuity() const 
53 {
54   Standard_NotImplemented::Raise("Adaptor2d_Curve2d::Continuity");
55   return GeomAbs_C0;
56 }
57
58
59 //=======================================================================
60 //function : NbIntervals
61 //purpose  : 
62 //=======================================================================
63
64 //Standard_Integer Adaptor2d_Curve2d::NbIntervals(const GeomAbs_Shape S) const 
65 Standard_Integer Adaptor2d_Curve2d::NbIntervals(const GeomAbs_Shape ) const 
66 {
67   Standard_NotImplemented::Raise("Adaptor2d_Curve2d::NbIntervals");
68   return 0;
69 }
70
71
72 //=======================================================================
73 //function : Intervals
74 //purpose  : 
75 //=======================================================================
76
77 //void Adaptor2d_Curve2d::Intervals(TColStd_Array1OfReal& T, 
78 //                              const GeomAbs_Shape S) const 
79 void Adaptor2d_Curve2d::Intervals(TColStd_Array1OfReal& , 
80                                 const GeomAbs_Shape ) const 
81 {
82   Standard_NotImplemented::Raise("Adaptor2d_Curve2d::Intervals");
83 }
84
85
86 //=======================================================================
87 //function : Trim
88 //purpose  : 
89 //=======================================================================
90
91 //Handle(Adaptor2d_HCurve2d) Adaptor2d_Curve2d::Trim(const Standard_Real First,
92 //                                             const Standard_Real Last ,
93 //                                             const Standard_Real Tol) const 
94 Handle(Adaptor2d_HCurve2d) Adaptor2d_Curve2d::Trim(const Standard_Real ,
95                                                const Standard_Real ,
96                                                const Standard_Real ) const 
97 {
98   Standard_NotImplemented::Raise("Adaptor2d_Curve2d::Trim");
99   return Handle(Adaptor2d_HCurve2d)();
100 }
101
102 //=======================================================================
103 //function : IsClosed
104 //purpose  : 
105 //=======================================================================
106
107 Standard_Boolean Adaptor2d_Curve2d::IsClosed() const 
108 {
109   Standard_NotImplemented::Raise("Adaptor2d_Curve2d::IsClosed");
110   return 0;
111 }
112
113
114 //=======================================================================
115 //function : IsPeriodic
116 //purpose  : 
117 //=======================================================================
118
119 Standard_Boolean Adaptor2d_Curve2d::IsPeriodic() const 
120 {
121   Standard_NotImplemented::Raise("Adaptor2d_Curve2d::IsPeriodic");
122   return 0;
123 }
124
125
126 //=======================================================================
127 //function : Period
128 //purpose  : 
129 //=======================================================================
130
131 Standard_Real Adaptor2d_Curve2d::Period() const 
132 {
133   Standard_NotImplemented::Raise("Adaptor2d_Curve2d::Period");
134   return 0.;
135 }
136
137
138 //=======================================================================
139 //function : Value
140 //purpose  : 
141 //=======================================================================
142
143 //gp_Pnt2d Adaptor2d_Curve2d::Value(const Standard_Real U) const 
144 gp_Pnt2d Adaptor2d_Curve2d::Value(const Standard_Real ) const 
145 {
146   Standard_NotImplemented::Raise("Adaptor2d_Curve2d::Value");
147   return gp_Pnt2d();
148 }
149
150
151 //=======================================================================
152 //function : D0
153 //purpose  : 
154 //=======================================================================
155
156 //void Adaptor2d_Curve2d::D0(const Standard_Real U, gp_Pnt2d& P) const 
157 void Adaptor2d_Curve2d::D0(const Standard_Real , gp_Pnt2d& ) const 
158 {
159   Standard_NotImplemented::Raise("Adaptor2d_Curve2d::D0");
160 }
161
162
163 //=======================================================================
164 //function : D1
165 //purpose  : 
166 //=======================================================================
167
168 //void Adaptor2d_Curve2d::D1(const Standard_Real U, 
169 //                       gp_Pnt2d& P, gp_Vec2d& V) const 
170 void Adaptor2d_Curve2d::D1(const Standard_Real , 
171                          gp_Pnt2d& , gp_Vec2d& ) const 
172 {
173   Standard_NotImplemented::Raise("Adaptor2d_Curve2d::D1");
174 }
175
176
177 //=======================================================================
178 //function : D2
179 //purpose  : 
180 //=======================================================================
181
182 //void Adaptor2d_Curve2d::D2(const Standard_Real U, 
183 //                       gp_Pnt2d& P, gp_Vec2d& V1, gp_Vec2d& V2) const 
184 void Adaptor2d_Curve2d::D2(const Standard_Real , 
185                          gp_Pnt2d& , gp_Vec2d& , gp_Vec2d& ) const 
186 {
187   Standard_NotImplemented::Raise("Adaptor2d_Curve2d::D2");
188 }
189
190
191 //=======================================================================
192 //function : D3
193 //purpose  : 
194 //=======================================================================
195
196 //void Adaptor2d_Curve2d::D3(const Standard_Real U, 
197 //                       gp_Pnt2d& P, gp_Vec2d& V1, gp_Vec2d& V2, gp_Vec2d& V3)
198 void Adaptor2d_Curve2d::D3(const Standard_Real , 
199                          gp_Pnt2d& , gp_Vec2d& , gp_Vec2d& , gp_Vec2d& ) const 
200 {
201   Standard_NotImplemented::Raise("Adaptor2d_Curve2d::D3");
202 }
203
204
205 //=======================================================================
206 //function : DN
207 //purpose  : 
208 //=======================================================================
209
210 //gp_Vec2d Adaptor2d_Curve2d::DN(const Standard_Real U, 
211 //                           const Standard_Integer N) const 
212 gp_Vec2d Adaptor2d_Curve2d::DN(const Standard_Real , 
213                              const Standard_Integer ) const 
214 {
215   Standard_NotImplemented::Raise("Adaptor2d_Curve2d::DN");
216   return gp_Vec2d();
217 }
218
219
220 //=======================================================================
221 //function : Resolution
222 //purpose  : 
223 //=======================================================================
224
225 //Standard_Real Adaptor2d_Curve2d::Resolution(const Standard_Real R3d) const 
226 Standard_Real Adaptor2d_Curve2d::Resolution(const Standard_Real ) const 
227 {
228   Standard_NotImplemented::Raise("Adaptor2d_Curve2d::Resolution");
229   return 0.;
230 }
231
232
233 //=======================================================================
234 //function : GetType
235 //purpose  : 
236 //=======================================================================
237
238 GeomAbs_CurveType Adaptor2d_Curve2d::GetType() const 
239 {
240   Standard_NotImplemented::Raise("Adaptor2d_Curve2d::GetType");
241   return GeomAbs_OtherCurve;
242 }
243
244
245 //=======================================================================
246 //function : Line
247 //purpose  : 
248 //=======================================================================
249
250 gp_Lin2d Adaptor2d_Curve2d::Line() const 
251 {
252   Standard_NotImplemented::Raise("Adaptor2d_Curve2d::Line");
253   return gp_Lin2d();
254 }
255
256
257 //=======================================================================
258 //function : Circle
259 //purpose  : 
260 //=======================================================================
261
262 gp_Circ2d Adaptor2d_Curve2d::Circle() const 
263 {
264   Standard_NotImplemented::Raise("Adaptor2d_Curve2d::Circle");
265   return gp_Circ2d();
266 }
267
268
269 //=======================================================================
270 //function : Ellipse
271 //purpose  : 
272 //=======================================================================
273
274 gp_Elips2d Adaptor2d_Curve2d::Ellipse() const 
275 {
276   Standard_NotImplemented::Raise("Adaptor2d_Curve2d::Ellipse");
277   return gp_Elips2d();
278 }
279
280
281 //=======================================================================
282 //function : Hyperbola
283 //purpose  : 
284 //=======================================================================
285
286 gp_Hypr2d Adaptor2d_Curve2d::Hyperbola() const 
287 {
288   Standard_NotImplemented::Raise("Adaptor2d_Curve2d::Hyperbola");
289   return gp_Hypr2d();
290 }
291
292
293 //=======================================================================
294 //function : Parabola
295 //purpose  : 
296 //=======================================================================
297
298 gp_Parab2d Adaptor2d_Curve2d::Parabola() const 
299 {
300   Standard_NotImplemented::Raise("Adaptor2d_Curve2d::Parabola");
301   return gp_Parab2d();
302 }
303
304
305 //=======================================================================
306 //function : Degree
307 //purpose  : 
308 //=======================================================================
309
310 Standard_Integer Adaptor2d_Curve2d::Degree() const 
311 {
312   Standard_NotImplemented::Raise("Adaptor2d_Curve2d::Degree");
313   return 0;
314 }
315
316
317 //=======================================================================
318 //function : IsRational
319 //purpose  : 
320 //=======================================================================
321
322 Standard_Boolean Adaptor2d_Curve2d::IsRational() const 
323 {
324   Standard_NotImplemented::Raise("Adaptor2d_Curve2d::IsRational");
325   return 0;
326 }
327
328
329 //=======================================================================
330 //function : NbPoles
331 //purpose  : 
332 //=======================================================================
333
334 Standard_Integer Adaptor2d_Curve2d::NbPoles() const 
335 {
336   Standard_NotImplemented::Raise("Adaptor2d_Curve2d::NbPole");
337   return 0;
338 }
339
340
341 //=======================================================================
342 //function : NbKnots
343 //purpose  : 
344 //=======================================================================
345
346 Standard_Integer Adaptor2d_Curve2d::NbKnots() const 
347 {
348   Standard_NotImplemented::Raise("Adaptor2d_Curve2d::NbKnots");
349   return 0;
350 }
351
352
353 //=======================================================================
354 //function : Bezier
355 //purpose  : 
356 //=======================================================================
357
358 Handle(Geom2d_BezierCurve) Adaptor2d_Curve2d::Bezier() const 
359 {
360   Standard_NotImplemented::Raise("Adaptor2d_Curve2d::Bezier");
361   return Handle(Geom2d_BezierCurve)();
362 }
363
364
365 //=======================================================================
366 //function : BSpline
367 //purpose  : 
368 //=======================================================================
369
370 Handle(Geom2d_BSplineCurve) Adaptor2d_Curve2d::BSpline() const 
371 {
372   Standard_NotImplemented::Raise("Adaptor2d_Curve2d::BSpline");
373   return Handle(Geom2d_BSplineCurve)();
374 }
375
376 //=======================================================================
377 //function : NbSamples
378 //purpose  : 
379 //=======================================================================
380 Standard_Integer Adaptor2d_Curve2d::NbSamples() const
381 {
382   return 20;  
383 }
384