Back to home page

EIC code displayed by LXR

 
 

    


Warning, /include/opencascade/Extrema_CurveTool.lxx is written in an unsupported language. File is not indexed.

0001 // Created on: 1995-07-18
0002 // Created by: Modelistation
0003 // Copyright (c) 1995-1999 Matra Datavision
0004 // Copyright (c) 1999-2014 OPEN CASCADE SAS
0005 //
0006 // This file is part of Open CASCADE Technology software library.
0007 //
0008 // This library is free software; you can redistribute it and/or modify it under
0009 // the terms of the GNU Lesser General Public License version 2.1 as published
0010 // by the Free Software Foundation, with special exception defined in the file
0011 // OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
0012 // distribution for complete text of the license and disclaimer of any warranty.
0013 //
0014 // Alternatively, this file may be used under the terms of Open CASCADE
0015 // commercial license or contractual agreement.
0016 
0017 #include <gp_Vec.hxx>
0018 #include <gp_Pnt.hxx>
0019 #include <gp_Parab.hxx>
0020 #include <gp_Lin.hxx>
0021 #include <gp_Elips.hxx>
0022 #include <gp_Hypr.hxx>
0023 #include <gp_Circ.hxx>
0024 #include <Geom_BezierCurve.hxx>
0025 #include <Geom_BSplineCurve.hxx>
0026 #include <Adaptor3d_Curve.hxx>
0027 
0028 
0029 //=======================================================================
0030 //function : FirstParameter
0031 //purpose  : 
0032 //=======================================================================
0033 
0034 inline Standard_Real Extrema_CurveTool::FirstParameter(const Adaptor3d_Curve& C)
0035 {
0036   return C.FirstParameter();
0037 }
0038 
0039 //=======================================================================
0040 //function : LastParameter
0041 //purpose  : 
0042 //=======================================================================
0043 
0044 inline Standard_Real Extrema_CurveTool::LastParameter(const Adaptor3d_Curve& C)
0045 {
0046   return C.LastParameter();
0047 }
0048 
0049 //=======================================================================
0050 //function : Value
0051 //purpose  : 
0052 //=======================================================================
0053 
0054 inline gp_Pnt Extrema_CurveTool::Value(const Adaptor3d_Curve& C,
0055                                        const Standard_Real U)
0056 {
0057   return C.Value(U);
0058 }
0059 
0060 //=======================================================================
0061 //function : D0
0062 //purpose  : 
0063 //=======================================================================
0064 
0065 inline void Extrema_CurveTool::D0(const Adaptor3d_Curve& C, 
0066                                         const Standard_Real U, 
0067                                         gp_Pnt& P)
0068 {
0069   C.D0(U, P);
0070 }
0071 
0072 //=======================================================================
0073 //function : D1
0074 //purpose  : 
0075 //=======================================================================
0076 
0077 inline void Extrema_CurveTool::D1(const Adaptor3d_Curve& C,
0078                                   const Standard_Real U,
0079                                   gp_Pnt& P,
0080                                   gp_Vec& V)
0081 {
0082   C.D1(U, P, V);
0083 }
0084 
0085 //=======================================================================
0086 //function : D2
0087 //purpose  : 
0088 //=======================================================================
0089 
0090 inline void Extrema_CurveTool::D2(const Adaptor3d_Curve& C,
0091                                   const Standard_Real U,
0092                                   gp_Pnt& P,
0093                                   gp_Vec& V1,
0094                                   gp_Vec& V2)
0095 {
0096   C.D2(U, P, V1, V2);
0097 }
0098 
0099 //=======================================================================
0100 //function : D3
0101 //purpose  : 
0102 //=======================================================================
0103 
0104  inline void Extrema_CurveTool::D3(const Adaptor3d_Curve& C, 
0105                                          const Standard_Real U, 
0106                                          gp_Pnt& P, 
0107                                          gp_Vec& V1, 
0108                                          gp_Vec& V2, 
0109                                          gp_Vec& V3)
0110 {
0111   C.D3(U, P, V1, V2, V3);
0112 }
0113 
0114 //=======================================================================
0115 //function : DN
0116 //purpose  : 
0117 //=======================================================================
0118 inline gp_Vec Extrema_CurveTool::DN(const Adaptor3d_Curve& C, 
0119                                              const Standard_Real U, 
0120                                              const Standard_Integer N)
0121 {
0122   return C.DN(U, N);
0123 }
0124 
0125 
0126 //=======================================================================
0127 //function : Continuity
0128 //purpose  : 
0129 //=======================================================================
0130 
0131 inline GeomAbs_Shape Extrema_CurveTool::Continuity(const Adaptor3d_Curve& C)
0132 {
0133   return C.Continuity();
0134 }
0135 
0136 //=======================================================================
0137 //function : NbIntervals
0138 //purpose  : 
0139 //=======================================================================
0140 
0141 inline Standard_Integer Extrema_CurveTool::NbIntervals(Adaptor3d_Curve& C,
0142                                                        const GeomAbs_Shape S)
0143 {
0144   return C.NbIntervals(S);
0145 }
0146 
0147 
0148 //=======================================================================
0149 //function : Intervals
0150 //purpose  : 
0151 //=======================================================================
0152 
0153 inline void Extrema_CurveTool::Intervals(Adaptor3d_Curve& C,
0154                                          TColStd_Array1OfReal& T,
0155                                          const GeomAbs_Shape   S)
0156 {
0157   C.Intervals(T, S);
0158 }
0159 
0160 //=======================================================================
0161 //function : Period
0162 //purpose  : 
0163 //=======================================================================
0164 
0165 inline Standard_Real Extrema_CurveTool::Period(const Adaptor3d_Curve& C)
0166 {
0167   return C.Period();
0168 }
0169 
0170 
0171 //=======================================================================
0172 //function : GetType
0173 //purpose  : 
0174 //=======================================================================
0175 
0176 inline GeomAbs_CurveType Extrema_CurveTool::GetType(const Adaptor3d_Curve& C)
0177 {
0178   return C.GetType();
0179 }
0180 
0181 //=======================================================================
0182 //function : Line
0183 //purpose  : 
0184 //=======================================================================
0185 
0186 inline gp_Lin Extrema_CurveTool::Line(const Adaptor3d_Curve& C)
0187 {
0188   return C.Line();
0189 }
0190 
0191 //=======================================================================
0192 //function : Circle
0193 //purpose  : 
0194 //=======================================================================
0195 
0196 inline gp_Circ Extrema_CurveTool::Circle(const Adaptor3d_Curve& C)
0197 {
0198   return C.Circle();
0199 }
0200 
0201 //=======================================================================
0202 //function : Ellipse
0203 //purpose  : 
0204 //=======================================================================
0205 
0206 inline gp_Elips Extrema_CurveTool::Ellipse(const Adaptor3d_Curve& C)
0207 {
0208   return C.Ellipse();
0209 }
0210 
0211 //=======================================================================
0212 //function : Hyperbola
0213 //purpose  : 
0214 //=======================================================================
0215 
0216 inline gp_Hypr Extrema_CurveTool::Hyperbola(const Adaptor3d_Curve& C)
0217 {
0218   return C.Hyperbola();
0219 }
0220 
0221 //=======================================================================
0222 //function : Parabola
0223 //purpose  : 
0224 //=======================================================================
0225 
0226 inline gp_Parab Extrema_CurveTool::Parabola(const Adaptor3d_Curve& C)
0227 {
0228   return C.Parabola();
0229 }
0230 //=======================================================================
0231 //function : NbPoles
0232 //purpose  : 
0233 //=======================================================================
0234 
0235  inline Standard_Integer Extrema_CurveTool::NbPoles(const Adaptor3d_Curve& C)
0236 {
0237   return C.NbPoles();
0238 }
0239 
0240 //=======================================================================
0241 //function : Degree
0242 //purpose  : 
0243 //=======================================================================
0244 
0245  inline Standard_Integer Extrema_CurveTool::Degree(const Adaptor3d_Curve& C)
0246 {
0247   return C.Degree();
0248 }
0249 
0250 //=======================================================================
0251 //function : IsRational
0252 //purpose  : 
0253 //=======================================================================
0254 
0255  inline Standard_Boolean Extrema_CurveTool::IsRational(const Adaptor3d_Curve& C)
0256 {
0257   return C.IsRational();
0258 }
0259 
0260 //=======================================================================
0261 //function : NbKnots
0262 //purpose  : 
0263 //=======================================================================
0264 
0265  inline Standard_Integer Extrema_CurveTool::NbKnots(const Adaptor3d_Curve& C)
0266 {
0267   return C.NbKnots();
0268 }
0269 
0270 
0271 //=======================================================================
0272 //function : Bezier
0273 //purpose  : 
0274 //=======================================================================
0275 
0276 inline Handle(Geom_BezierCurve) Extrema_CurveTool::Bezier(const Adaptor3d_Curve& C)
0277 {
0278   return C.Bezier();
0279 }
0280 
0281 //=======================================================================
0282 //function : BSpline
0283 //purpose  : 
0284 //=======================================================================
0285 
0286 inline Handle(Geom_BSplineCurve) Extrema_CurveTool::BSpline(const Adaptor3d_Curve& C)
0287 {
0288   return C.BSpline();
0289 }
0290 
0291 //=======================================================================
0292 //function : Resolution
0293 //purpose  : 
0294 //=======================================================================
0295 
0296 inline Standard_Real Extrema_CurveTool::Resolution(const Adaptor3d_Curve& C,
0297                                                    const Standard_Real R3d) 
0298 {
0299   return C.Resolution(R3d);
0300 }