1 // Copyright (c) 1999-2014 OPEN CASCADE SAS
3 // This file is part of Open CASCADE Technology software library.
5 // This library is free software; you can redistribute it and/or modify it under
6 // the terms of the GNU Lesser General Public License version 2.1 as published
7 // by the Free Software Foundation, with special exception defined in the file
8 // OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
9 // distribution for complete text of the license and disclaimer of any warranty.
11 // Alternatively, this file may be used under the terms of Open CASCADE
12 // commercial license or contractual agreement.
14 #include <Adaptor3d_Curve.hxx>
16 //=======================================================================
17 //function : FirstParameter
19 //=======================================================================
21 inline Standard_Real Adaptor3d_HCurve::FirstParameter() const
23 return Curve().FirstParameter();
26 //=======================================================================
27 //function : LastParameter
29 //=======================================================================
31 inline Standard_Real Adaptor3d_HCurve::LastParameter() const
33 return Curve().LastParameter();
36 //=======================================================================
37 //function : Continuity
39 //=======================================================================
41 inline GeomAbs_Shape Adaptor3d_HCurve::Continuity() const
43 return Curve().Continuity();
46 //=======================================================================
47 //function : NbIntervals
49 //=======================================================================
51 inline Standard_Integer Adaptor3d_HCurve::NbIntervals(const GeomAbs_Shape S) const
53 return Curve().NbIntervals(S);
56 //=======================================================================
57 //function : Intervals
59 //=======================================================================
61 inline void Adaptor3d_HCurve::Intervals(TColStd_Array1OfReal& T,
62 const GeomAbs_Shape S) const
64 Curve().Intervals(T,S);
67 //=======================================================================
70 //=======================================================================
72 inline Handle(Adaptor3d_HCurve) Adaptor3d_HCurve::Trim
73 (const Standard_Real First,
74 const Standard_Real Last,
75 const Standard_Real Tol) const
77 return Curve().Trim(First,Last,Tol);
80 //=======================================================================
83 //=======================================================================
85 inline Standard_Boolean Adaptor3d_HCurve::IsClosed() const
87 return Curve().IsClosed();
90 //=======================================================================
91 //function : IsPeriodic
93 //=======================================================================
95 inline Standard_Boolean Adaptor3d_HCurve::IsPeriodic() const
97 return Curve().IsPeriodic();
100 //=======================================================================
103 //=======================================================================
105 inline Standard_Real Adaptor3d_HCurve::Period() const
107 return Curve().Period();
110 //=======================================================================
113 //=======================================================================
115 inline gp_Pnt Adaptor3d_HCurve::Value(const Standard_Real U) const
117 return Curve().Value(U);
120 //=======================================================================
123 //=======================================================================
125 inline void Adaptor3d_HCurve::D0(const Standard_Real U, gp_Pnt& P) const
130 //=======================================================================
133 //=======================================================================
135 inline void Adaptor3d_HCurve::D1(const Standard_Real U, gp_Pnt& P, gp_Vec& V) const
140 //=======================================================================
143 //=======================================================================
145 inline void Adaptor3d_HCurve::D2(const Standard_Real U, gp_Pnt& P, gp_Vec& V1, gp_Vec& V2) const
147 Curve().D2(U,P,V1,V2);
150 //=======================================================================
153 //=======================================================================
155 inline void Adaptor3d_HCurve::D3(const Standard_Real U, gp_Pnt& P, gp_Vec& V1, gp_Vec& V2, gp_Vec& V3) const
157 Curve().D3(U,P,V1,V2,V3);
160 //=======================================================================
163 //=======================================================================
165 inline gp_Vec Adaptor3d_HCurve::DN(const Standard_Real U, const Standard_Integer N) const
167 return Curve().DN(U,N);
170 //=======================================================================
171 //function : Resolution
173 //=======================================================================
175 inline Standard_Real Adaptor3d_HCurve::Resolution(const Standard_Real R3d) const
177 return Curve().Resolution(R3d);
180 //=======================================================================
183 //=======================================================================
185 inline GeomAbs_CurveType Adaptor3d_HCurve::GetType() const
187 return Curve().GetType();
190 //=======================================================================
193 //=======================================================================
195 inline gp_Lin Adaptor3d_HCurve::Line() const
197 return Curve().Line();
200 //=======================================================================
203 //=======================================================================
205 inline gp_Circ Adaptor3d_HCurve::Circle() const
207 return Curve().Circle();
210 //=======================================================================
213 //=======================================================================
215 inline gp_Elips Adaptor3d_HCurve::Ellipse() const
217 return Curve().Ellipse();
220 //=======================================================================
221 //function : Hyperbola
223 //=======================================================================
225 inline gp_Hypr Adaptor3d_HCurve::Hyperbola() const
227 return Curve().Hyperbola();
230 //=======================================================================
231 //function : Parabola
233 //=======================================================================
235 inline gp_Parab Adaptor3d_HCurve::Parabola() const
237 return Curve().Parabola();
240 //=======================================================================
243 //=======================================================================
245 inline Standard_Integer Adaptor3d_HCurve::Degree() const
247 return Curve().Degree() ;
249 //=======================================================================
250 //function : IsRational
252 //=======================================================================
254 inline Standard_Boolean Adaptor3d_HCurve::IsRational() const
256 return Curve().IsRational() ;
258 //=======================================================================
261 //=======================================================================
262 inline Standard_Integer Adaptor3d_HCurve::NbPoles() const
264 return Curve().NbPoles() ;
266 //=======================================================================
269 //=======================================================================
271 inline Standard_Integer Adaptor3d_HCurve::NbKnots() const
273 return Curve().NbKnots() ;
276 //=======================================================================
279 //=======================================================================
281 inline Handle(Geom_BezierCurve) Adaptor3d_HCurve::Bezier() const
283 return Curve().Bezier();
286 //=======================================================================
289 //=======================================================================
291 inline Handle(Geom_BSplineCurve) Adaptor3d_HCurve::BSpline() const
293 return Curve().BSpline();