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
6 // This file is part of Open CASCADE Technology software library.
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.
14 // Alternatively, this file may be used under the terms of Open CASCADE
15 // commercial license or contractual agreement.
17 #include <BiTgte_CurveOnVertex.ixx>
19 #include <BiTgte_HCurveOnVertex.hxx>
20 #include <BRep_Tool.hxx>
21 #include <Standard_NotImplemented.hxx>
24 //=======================================================================
25 //function : BiTgte_CurveOnVertex
27 //======================================================================
29 BiTgte_CurveOnVertex::BiTgte_CurveOnVertex()
30 : myFirst(0.0), myLast(0.0)
35 //=======================================================================
36 //function : BiTgte_CurveOnVertex
38 //=======================================================================
40 BiTgte_CurveOnVertex::BiTgte_CurveOnVertex(const TopoDS_Edge& theEonF,
41 const TopoDS_Vertex& theVertex)
42 : myFirst(0.0), myLast(0.0)
44 Init(theEonF, theVertex);
48 //=======================================================================
51 //=======================================================================
53 void BiTgte_CurveOnVertex::Init(const TopoDS_Edge& EonF,
54 const TopoDS_Vertex& V)
56 BRep_Tool::Range(EonF,myFirst,myLast);
57 myPnt = BRep_Tool::Pnt(V);
61 //=======================================================================
62 //function : FirstParameter
64 //=======================================================================
66 Standard_Real BiTgte_CurveOnVertex::FirstParameter() const
72 //=======================================================================
73 //function : LastParameter
75 //=======================================================================
77 Standard_Real BiTgte_CurveOnVertex::LastParameter() const
83 //=======================================================================
86 //=======================================================================
88 GeomAbs_Shape BiTgte_CurveOnVertex::Continuity() const
90 Standard_NotImplemented::Raise("BiTgte_CurveOnVertex");
95 //=======================================================================
98 //=======================================================================
100 Standard_Integer BiTgte_CurveOnVertex::NbIntervals(const GeomAbs_Shape) const
102 Standard_NotImplemented::Raise("BiTgte_CurveOnVertex");
107 //=======================================================================
110 //=======================================================================
112 void BiTgte_CurveOnVertex::Intervals(TColStd_Array1OfReal&,
113 const GeomAbs_Shape) const
115 Standard_NotImplemented::Raise("BiTgte_CurveOnVertex");
119 //=======================================================================
122 //=======================================================================
124 Handle(Adaptor3d_HCurve) BiTgte_CurveOnVertex::Trim(const Standard_Real,
129 Standard_NotImplemented::Raise("BiTgte_CurveOnVertex");
130 Handle(BiTgte_HCurveOnVertex) HC;
135 //=======================================================================
138 //=======================================================================
140 Standard_Boolean BiTgte_CurveOnVertex::IsClosed() const
142 Standard_NotImplemented::Raise("BiTgte_CurveOnVertex");
143 return Standard_False;
147 //=======================================================================
150 //=======================================================================
152 Standard_Boolean BiTgte_CurveOnVertex::IsPeriodic() const
154 Standard_NotImplemented::Raise("BiTgte_CurveOnVertex");
155 return Standard_False;
159 //=======================================================================
162 //=======================================================================
164 Standard_Real BiTgte_CurveOnVertex::Period() const
166 Standard_NotImplemented::Raise("BiTgte_CurveOnVertex");
171 //=======================================================================
174 //=======================================================================
176 gp_Pnt BiTgte_CurveOnVertex::Value(const Standard_Real) const
182 //=======================================================================
185 //=======================================================================
187 void BiTgte_CurveOnVertex::D0(const Standard_Real /*U*/,gp_Pnt& P) const
193 //=======================================================================
196 //=======================================================================
198 void BiTgte_CurveOnVertex::D1(const Standard_Real ,gp_Pnt& ,gp_Vec&) const
200 Standard_NotImplemented::Raise("BiTgte_CurveOnVertex");
204 //=======================================================================
207 //=======================================================================
209 void BiTgte_CurveOnVertex::D2(const Standard_Real,gp_Pnt&,
210 gp_Vec& ,gp_Vec& ) const
212 Standard_NotImplemented::Raise("BiTgte_CurveOnVertex");
216 //=======================================================================
219 //=======================================================================
221 void BiTgte_CurveOnVertex::D3(const Standard_Real,
227 Standard_NotImplemented::Raise("BiTgte_CurveOnVertex");
231 //=======================================================================
234 //=======================================================================
236 gp_Vec BiTgte_CurveOnVertex::DN(const Standard_Real,
237 const Standard_Integer) const
239 Standard_NotImplemented::Raise("BiTgte_CurveOnVertex");
244 //=======================================================================
247 //=======================================================================
249 Standard_Real BiTgte_CurveOnVertex::Resolution(const Standard_Real) const
251 Standard_NotImplemented::Raise("BiTgte_CurveOnVertex");
256 //=======================================================================
259 //=======================================================================
261 GeomAbs_CurveType BiTgte_CurveOnVertex::GetType() const
263 return GeomAbs_OtherCurve;
267 //=======================================================================
270 //=======================================================================
272 gp_Lin BiTgte_CurveOnVertex::Line() const
274 Standard_NotImplemented::Raise("BiTgte_CurveOnVertex");
279 //=======================================================================
282 //=======================================================================
284 gp_Circ BiTgte_CurveOnVertex::Circle() const
286 Standard_NoSuchObject::Raise("BiTgte_CurveOnVertex::Circle");
291 //=======================================================================
294 //=======================================================================
296 gp_Elips BiTgte_CurveOnVertex::Ellipse() const
298 Standard_NotImplemented::Raise("BiTgte_CurveOnVertex");
303 //=======================================================================
306 //=======================================================================
308 gp_Hypr BiTgte_CurveOnVertex::Hyperbola() const
310 Standard_NotImplemented::Raise("BiTgte_CurveOnVertex");
315 //=======================================================================
318 //=======================================================================
320 gp_Parab BiTgte_CurveOnVertex::Parabola() const
322 Standard_NotImplemented::Raise("BiTgte_CurveOnVertex");
327 //=======================================================================
330 //=======================================================================
332 Standard_Integer BiTgte_CurveOnVertex::Degree() const
334 Standard_NotImplemented::Raise("BiTgte_CurveOnVertex");
339 //=======================================================================
342 //=======================================================================
344 Standard_Boolean BiTgte_CurveOnVertex::IsRational() const
346 Standard_NotImplemented::Raise("BiTgte_CurveOnVertex");
347 return Standard_False;
351 //=======================================================================
354 //=======================================================================
356 Standard_Integer BiTgte_CurveOnVertex::NbPoles() const
358 Standard_NotImplemented::Raise("BiTgte_CurveOnVertex");
363 //=======================================================================
366 //=======================================================================
368 Standard_Integer BiTgte_CurveOnVertex::NbKnots() const
370 Standard_NotImplemented::Raise("BiTgte_CurveOnVertex");
375 //=======================================================================
378 //=======================================================================
380 Handle(Geom_BezierCurve) BiTgte_CurveOnVertex::Bezier() const
382 Standard_NotImplemented::Raise("BiTgte_CurveOnVertex");
383 Handle(Geom_BezierCurve) B;
388 //=======================================================================
391 //=======================================================================
393 Handle(Geom_BSplineCurve) BiTgte_CurveOnVertex::BSpline() const
395 Standard_NotImplemented::Raise("BiTgte_CurveOnVertex");
396 Handle(Geom_BSplineCurve) B;