0025662: Project command produce wrong 2dcurve
[occt.git] / src / BiTgte / BiTgte_CurveOnVertex.cxx
CommitLineData
b311480e 1// Created on: 1997-03-21
2// Created by: Bruno DUMORTIER
3// Copyright (c) 1997-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//
d5f74e42 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
973c2be1 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
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
29BiTgte_CurveOnVertex::BiTgte_CurveOnVertex()
30{
31}
32
33
34//=======================================================================
35//function : BiTgte_CurveOnVertex
36//purpose :
37//=======================================================================
38
39BiTgte_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
51void 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
64Standard_Real BiTgte_CurveOnVertex::FirstParameter() const
65{
66 return myFirst;
67}
68
69
70//=======================================================================
71//function : LastParameter
72//purpose :
73//=======================================================================
74
75Standard_Real BiTgte_CurveOnVertex::LastParameter() const
76{
77 return myLast;
78}
79
80
81//=======================================================================
82//function :
83//purpose :
84//=======================================================================
85
86GeomAbs_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
35e08fe8 98Standard_Integer BiTgte_CurveOnVertex::NbIntervals(const GeomAbs_Shape) const
7fd59977 99{
100 Standard_NotImplemented::Raise("BiTgte_CurveOnVertex");
101 return 0;
102}
103
104
105//=======================================================================
106//function :
107//purpose :
108//=======================================================================
109
35e08fe8 110void BiTgte_CurveOnVertex::Intervals(TColStd_Array1OfReal&,
111 const GeomAbs_Shape) const
7fd59977 112{
113 Standard_NotImplemented::Raise("BiTgte_CurveOnVertex");
114}
115
116
117//=======================================================================
118//function :
119//purpose :
120//=======================================================================
121
35e08fe8 122Handle(Adaptor3d_HCurve) BiTgte_CurveOnVertex::Trim(const Standard_Real,
123 const Standard_Real,
124 const Standard_Real)
7fd59977 125const
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
138Standard_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
150Standard_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
162Standard_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
35e08fe8 174gp_Pnt BiTgte_CurveOnVertex::Value(const Standard_Real) const
7fd59977 175{
176 return myPnt;
177}
178
179
180//=======================================================================
181//function :
182//purpose :
183//=======================================================================
184
35e08fe8 185void BiTgte_CurveOnVertex::D0(const Standard_Real /*U*/,gp_Pnt& P) const
7fd59977 186{
187 P = myPnt;
188}
189
190
191//=======================================================================
192//function :
193//purpose :
194//=======================================================================
195
35e08fe8 196void BiTgte_CurveOnVertex::D1(const Standard_Real ,gp_Pnt& ,gp_Vec&) const
7fd59977 197{
198 Standard_NotImplemented::Raise("BiTgte_CurveOnVertex");
199}
200
201
202//=======================================================================
203//function :
204//purpose :
205//=======================================================================
206
35e08fe8 207void BiTgte_CurveOnVertex::D2(const Standard_Real,gp_Pnt&,
208 gp_Vec& ,gp_Vec& ) const
7fd59977 209{
210 Standard_NotImplemented::Raise("BiTgte_CurveOnVertex");
211}
212
213
214//=======================================================================
215//function :
216//purpose :
217//=======================================================================
218
35e08fe8 219void BiTgte_CurveOnVertex::D3(const Standard_Real,
220 gp_Pnt& ,
221 gp_Vec& ,
222 gp_Vec& ,
223 gp_Vec& ) const
7fd59977 224{
225 Standard_NotImplemented::Raise("BiTgte_CurveOnVertex");
226}
227
228
229//=======================================================================
230//function :
231//purpose :
232//=======================================================================
233
35e08fe8 234gp_Vec BiTgte_CurveOnVertex::DN(const Standard_Real,
235 const Standard_Integer) const
7fd59977 236{
237 Standard_NotImplemented::Raise("BiTgte_CurveOnVertex");
238 return gp_Vec();
239}
240
241
242//=======================================================================
243//function :
244//purpose :
245//=======================================================================
246
35e08fe8 247Standard_Real BiTgte_CurveOnVertex::Resolution(const Standard_Real) const
7fd59977 248{
249 Standard_NotImplemented::Raise("BiTgte_CurveOnVertex");
250 return 0.;
251}
252
253
254//=======================================================================
255//function :
256//purpose :
257//=======================================================================
258
259GeomAbs_CurveType BiTgte_CurveOnVertex::GetType() const
260{
261 return GeomAbs_OtherCurve;
262}
263
264
265//=======================================================================
266//function :
267//purpose :
268//=======================================================================
269
270gp_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
282gp_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
294gp_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
306gp_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
318gp_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
330Standard_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
342Standard_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
354Standard_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
366Standard_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
378Handle(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
391Handle(Geom_BSplineCurve) BiTgte_CurveOnVertex::BSpline() const
392{
393 Standard_NotImplemented::Raise("BiTgte_CurveOnVertex");
394 Handle(Geom_BSplineCurve) B;
395 return B;
396}
397
398