0ac1606c73522300b290c83fdefc375dcb0c14d8
[occt.git] / src / BiTgte / BiTgte_CurveOnVertex.cxx
1 // Created on: 1997-03-21
2 // Created by: Bruno DUMORTIER
3 // Copyright (c) 1997-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 <BiTgte_CurveOnVertex.ixx>
18
19 #include <BiTgte_HCurveOnVertex.hxx>
20 #include <BRep_Tool.hxx>
21 #include <Standard_NotImplemented.hxx>
22
23
24 //=======================================================================
25 //function : BiTgte_CurveOnVertex
26 //purpose  : 
27 //======================================================================
28
29 BiTgte_CurveOnVertex::BiTgte_CurveOnVertex()
30 {
31 }
32
33
34 //=======================================================================
35 //function : BiTgte_CurveOnVertex
36 //purpose  : 
37 //=======================================================================
38
39 BiTgte_CurveOnVertex::BiTgte_CurveOnVertex(const TopoDS_Edge&   EonF,
40                                            const TopoDS_Vertex& V    )
41 {
42   Init(EonF,V);
43 }
44
45
46 //=======================================================================
47 //function : Init
48 //purpose  : 
49 //=======================================================================
50
51 void BiTgte_CurveOnVertex::Init(const TopoDS_Edge&   EonF,
52                                 const TopoDS_Vertex& V   )
53 {
54   BRep_Tool::Range(EonF,myFirst,myLast);
55   myPnt = BRep_Tool::Pnt(V);
56 }
57
58
59 //=======================================================================
60 //function : FirstParameter
61 //purpose  : 
62 //=======================================================================
63
64 Standard_Real BiTgte_CurveOnVertex::FirstParameter() const
65 {
66   return myFirst;
67 }
68
69
70 //=======================================================================
71 //function : LastParameter
72 //purpose  : 
73 //=======================================================================
74
75 Standard_Real BiTgte_CurveOnVertex::LastParameter() const
76 {
77   return myLast;
78 }
79
80
81 //=======================================================================
82 //function : 
83 //purpose  : 
84 //=======================================================================
85
86 GeomAbs_Shape BiTgte_CurveOnVertex::Continuity() const
87 {
88   Standard_NotImplemented::Raise("BiTgte_CurveOnVertex");
89   return GeomAbs_C0;
90 }
91
92
93 //=======================================================================
94 //function : 
95 //purpose  : 
96 //=======================================================================
97
98 Standard_Integer BiTgte_CurveOnVertex::NbIntervals(const GeomAbs_Shape) const
99 {
100   Standard_NotImplemented::Raise("BiTgte_CurveOnVertex");
101   return 0;
102 }
103
104
105 //=======================================================================
106 //function : 
107 //purpose  : 
108 //=======================================================================
109
110 void BiTgte_CurveOnVertex::Intervals(TColStd_Array1OfReal&,
111                                      const GeomAbs_Shape) const
112 {
113   Standard_NotImplemented::Raise("BiTgte_CurveOnVertex");
114 }
115
116
117 //=======================================================================
118 //function : 
119 //purpose  : 
120 //=======================================================================
121
122 Handle(Adaptor3d_HCurve) BiTgte_CurveOnVertex::Trim(const Standard_Real,
123                                                     const Standard_Real,
124                                                     const Standard_Real) 
125 const
126 {
127   Standard_NotImplemented::Raise("BiTgte_CurveOnVertex");
128   Handle(BiTgte_HCurveOnVertex) HC;
129   return HC;
130 }
131
132
133 //=======================================================================
134 //function : 
135 //purpose  : 
136 //=======================================================================
137
138 Standard_Boolean BiTgte_CurveOnVertex::IsClosed() const
139 {
140   Standard_NotImplemented::Raise("BiTgte_CurveOnVertex");
141   return Standard_False;
142 }
143
144
145 //=======================================================================
146 //function : 
147 //purpose  : 
148 //=======================================================================
149
150 Standard_Boolean BiTgte_CurveOnVertex::IsPeriodic() const
151 {
152   Standard_NotImplemented::Raise("BiTgte_CurveOnVertex");
153   return Standard_False;
154 }
155
156
157 //=======================================================================
158 //function : 
159 //purpose  : 
160 //=======================================================================
161
162 Standard_Real BiTgte_CurveOnVertex::Period() const
163 {
164   Standard_NotImplemented::Raise("BiTgte_CurveOnVertex");
165   return 0.;
166 }
167
168
169 //=======================================================================
170 //function : 
171 //purpose  : 
172 //=======================================================================
173
174 gp_Pnt BiTgte_CurveOnVertex::Value(const Standard_Real) const
175 {
176   return myPnt;
177 }
178
179
180 //=======================================================================
181 //function : 
182 //purpose  : 
183 //=======================================================================
184
185 void BiTgte_CurveOnVertex::D0(const Standard_Real /*U*/,gp_Pnt& P) const
186 {
187   P = myPnt;
188 }
189
190
191 //=======================================================================
192 //function : 
193 //purpose  : 
194 //=======================================================================
195
196 void BiTgte_CurveOnVertex::D1(const Standard_Real ,gp_Pnt& ,gp_Vec&) const
197 {
198   Standard_NotImplemented::Raise("BiTgte_CurveOnVertex");
199 }
200
201
202 //=======================================================================
203 //function : 
204 //purpose  : 
205 //=======================================================================
206
207 void BiTgte_CurveOnVertex::D2(const Standard_Real,gp_Pnt&,
208                               gp_Vec& ,gp_Vec& ) const
209 {
210   Standard_NotImplemented::Raise("BiTgte_CurveOnVertex");
211 }
212
213
214 //=======================================================================
215 //function : 
216 //purpose  : 
217 //=======================================================================
218
219 void BiTgte_CurveOnVertex::D3(const Standard_Real,
220                               gp_Pnt& ,
221                               gp_Vec& ,
222                               gp_Vec& ,
223                               gp_Vec& ) const
224 {
225   Standard_NotImplemented::Raise("BiTgte_CurveOnVertex");
226 }
227
228
229 //=======================================================================
230 //function : 
231 //purpose  : 
232 //=======================================================================
233
234 gp_Vec BiTgte_CurveOnVertex::DN(const Standard_Real,
235                                 const Standard_Integer) const
236 {
237   Standard_NotImplemented::Raise("BiTgte_CurveOnVertex");
238   return gp_Vec();
239 }
240
241
242 //=======================================================================
243 //function : 
244 //purpose  : 
245 //=======================================================================
246
247 Standard_Real BiTgte_CurveOnVertex::Resolution(const Standard_Real) const
248 {
249   Standard_NotImplemented::Raise("BiTgte_CurveOnVertex");
250   return 0.;
251 }
252
253
254 //=======================================================================
255 //function : 
256 //purpose  : 
257 //=======================================================================
258
259 GeomAbs_CurveType BiTgte_CurveOnVertex::GetType() const
260 {
261   return GeomAbs_OtherCurve;
262 }
263
264
265 //=======================================================================
266 //function : 
267 //purpose  : 
268 //=======================================================================
269
270 gp_Lin BiTgte_CurveOnVertex::Line() const
271 {
272   Standard_NotImplemented::Raise("BiTgte_CurveOnVertex");
273   return gp_Lin();
274 }
275
276
277 //=======================================================================
278 //function : 
279 //purpose  : 
280 //=======================================================================
281
282 gp_Circ BiTgte_CurveOnVertex::Circle() const
283 {
284   Standard_NoSuchObject::Raise("BiTgte_CurveOnVertex::Circle");
285   return gp_Circ();
286 }
287
288
289 //=======================================================================
290 //function : 
291 //purpose  : 
292 //=======================================================================
293
294 gp_Elips BiTgte_CurveOnVertex::Ellipse() const
295 {
296   Standard_NotImplemented::Raise("BiTgte_CurveOnVertex");
297   return gp_Elips();
298 }
299
300
301 //=======================================================================
302 //function : 
303 //purpose  : 
304 //=======================================================================
305
306 gp_Hypr BiTgte_CurveOnVertex::Hyperbola() const
307 {
308   Standard_NotImplemented::Raise("BiTgte_CurveOnVertex");
309   return gp_Hypr();
310 }
311
312
313 //=======================================================================
314 //function : 
315 //purpose  : 
316 //=======================================================================
317
318 gp_Parab BiTgte_CurveOnVertex::Parabola() const
319 {
320   Standard_NotImplemented::Raise("BiTgte_CurveOnVertex");
321   return gp_Parab();
322 }
323
324
325 //=======================================================================
326 //function : 
327 //purpose  : 
328 //=======================================================================
329
330 Standard_Integer BiTgte_CurveOnVertex::Degree() const
331 {
332   Standard_NotImplemented::Raise("BiTgte_CurveOnVertex");
333   return 0;
334 }
335
336
337 //=======================================================================
338 //function : 
339 //purpose  : 
340 //=======================================================================
341
342 Standard_Boolean BiTgte_CurveOnVertex::IsRational() const
343 {
344   Standard_NotImplemented::Raise("BiTgte_CurveOnVertex");
345   return Standard_False;
346 }
347
348
349 //=======================================================================
350 //function : 
351 //purpose  : 
352 //=======================================================================
353
354 Standard_Integer BiTgte_CurveOnVertex::NbPoles() const
355 {
356   Standard_NotImplemented::Raise("BiTgte_CurveOnVertex");
357   return 0;
358 }
359
360
361 //=======================================================================
362 //function : 
363 //purpose  : 
364 //=======================================================================
365
366 Standard_Integer BiTgte_CurveOnVertex::NbKnots() const
367 {
368   Standard_NotImplemented::Raise("BiTgte_CurveOnVertex");
369   return 0;
370 }
371
372
373 //=======================================================================
374 //function : 
375 //purpose  : 
376 //=======================================================================
377
378 Handle(Geom_BezierCurve) BiTgte_CurveOnVertex::Bezier() const
379 {
380   Standard_NotImplemented::Raise("BiTgte_CurveOnVertex");
381   Handle(Geom_BezierCurve) B;
382   return B;
383 }
384
385
386 //=======================================================================
387 //function : 
388 //purpose  : 
389 //=======================================================================
390
391 Handle(Geom_BSplineCurve) BiTgte_CurveOnVertex::BSpline() const
392 {
393   Standard_NotImplemented::Raise("BiTgte_CurveOnVertex");
394   Handle(Geom_BSplineCurve) B;
395   return B;
396 }
397
398