Warning, /include/opencascade/HLRBRep_Curve.lxx is written in an unsupported language. File is not indexed.
0001 // Created on: 1992-03-13
0002 // Created by: Christophe MARION
0003 // Copyright (c) 1992-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 <Standard_NotImplemented.hxx>
0018 #include <gp_Pnt2d.hxx>
0019 #include <gp_Vec2d.hxx>
0020 #include <gp_Lin2d.hxx>
0021 #include <gp_Circ2d.hxx>
0022 #include <gp_Elips2d.hxx>
0023 #include <gp_Hypr2d.hxx>
0024 #include <gp_Parab2d.hxx>
0025 #include <HLRBRep_BCurveTool.hxx>
0026
0027 //=======================================================================
0028 // function : Curve
0029 // purpose :
0030 //=======================================================================
0031
0032 inline BRepAdaptor_Curve& HLRBRep_Curve::Curve()
0033 {
0034 return myCurve;
0035 }
0036
0037 //=======================================================================
0038 // function : GetCurve
0039 // purpose :
0040 //=======================================================================
0041
0042 inline const BRepAdaptor_Curve& HLRBRep_Curve::GetCurve() const
0043 {
0044 return myCurve;
0045 }
0046
0047 //=======================================================================
0048 // function : Value3D
0049 // purpose :
0050 //=======================================================================
0051
0052 inline gp_Pnt HLRBRep_Curve::Value3D(const Standard_Real U) const
0053 {
0054 gp_Pnt P;
0055 D0(U, P);
0056 return P;
0057 }
0058
0059 //=======================================================================
0060 // function : D0
0061 // purpose :
0062 //=======================================================================
0063
0064 inline void HLRBRep_Curve::D0(const Standard_Real U, gp_Pnt& P) const
0065 {
0066 HLRBRep_BCurveTool::D0(myCurve, U, P);
0067 }
0068
0069 //=======================================================================
0070 // function : D1
0071 // purpose :
0072 //=======================================================================
0073
0074 inline void HLRBRep_Curve::D1(const Standard_Real U, gp_Pnt& P, gp_Vec& V) const
0075 {
0076 HLRBRep_BCurveTool::D1(myCurve, U, P, V);
0077 }
0078
0079 //=======================================================================
0080 // function : FirstParameter
0081 // purpose :
0082 //=======================================================================
0083
0084 inline Standard_Real HLRBRep_Curve::FirstParameter() const
0085 {
0086 return Parameter2d(HLRBRep_BCurveTool::FirstParameter(myCurve));
0087 }
0088
0089 //=======================================================================
0090 // function : LastParameter
0091 // purpose :
0092 //=======================================================================
0093
0094 inline Standard_Real HLRBRep_Curve::LastParameter() const
0095 {
0096 return Parameter2d(HLRBRep_BCurveTool::LastParameter(myCurve));
0097 }
0098
0099 //=======================================================================
0100 // function : Continuity
0101 // purpose :
0102 //=======================================================================
0103
0104 inline GeomAbs_Shape HLRBRep_Curve::Continuity() const
0105 {
0106 return HLRBRep_BCurveTool::Continuity(myCurve);
0107 }
0108
0109 //=======================================================================
0110 // function : NbIntervals
0111 // purpose :
0112 //=======================================================================
0113
0114 inline Standard_Integer HLRBRep_Curve::NbIntervals(const GeomAbs_Shape S) const
0115 {
0116 return HLRBRep_BCurveTool::NbIntervals(myCurve, S);
0117 }
0118
0119 //=======================================================================
0120 // function : Intervals
0121 // purpose :
0122 //=======================================================================
0123
0124 inline void HLRBRep_Curve::Intervals(TColStd_Array1OfReal& Tab, const GeomAbs_Shape Sh) const
0125 {
0126 HLRBRep_BCurveTool::Intervals(myCurve, Tab, Sh);
0127 }
0128
0129 //=======================================================================
0130 // function : IsClosed
0131 // purpose :
0132 //=======================================================================
0133
0134 inline Standard_Boolean HLRBRep_Curve::IsClosed() const
0135 {
0136 return HLRBRep_BCurveTool::IsClosed(myCurve);
0137 }
0138
0139 //=======================================================================
0140 // function : IsPeriodic
0141 // purpose :
0142 //=======================================================================
0143
0144 inline Standard_Boolean HLRBRep_Curve::IsPeriodic() const
0145 {
0146 return HLRBRep_BCurveTool::IsPeriodic(myCurve);
0147 }
0148
0149 //=======================================================================
0150 // function : Period
0151 // purpose :
0152 //=======================================================================
0153
0154 inline Standard_Real HLRBRep_Curve::Period() const
0155 {
0156 return HLRBRep_BCurveTool::Period(myCurve);
0157 }
0158
0159 //=======================================================================
0160 // function : Value
0161 // purpose :
0162 //=======================================================================
0163
0164 inline gp_Pnt2d HLRBRep_Curve::Value(const Standard_Real U) const
0165 {
0166 gp_Pnt2d P;
0167 D0(U, P);
0168 return P;
0169 }
0170
0171 //=======================================================================
0172 // function : Resolution
0173 // purpose :
0174 //=======================================================================
0175
0176 inline Standard_Real HLRBRep_Curve::Resolution(const Standard_Real R3d) const
0177 {
0178 return HLRBRep_BCurveTool::Resolution(myCurve, R3d);
0179 }
0180
0181 //=======================================================================
0182 // function : GetType
0183 // purpose :
0184 //=======================================================================
0185
0186 inline GeomAbs_CurveType HLRBRep_Curve::GetType() const
0187 {
0188 return myType;
0189 }
0190
0191 //=======================================================================
0192 // function : Degree
0193 // purpose :
0194 //=======================================================================
0195
0196 inline Standard_Integer HLRBRep_Curve::Degree() const
0197 {
0198 return HLRBRep_BCurveTool::Degree(myCurve);
0199 }
0200
0201 //=======================================================================
0202 // function : NbPoles
0203 // purpose :
0204 //=======================================================================
0205
0206 inline Standard_Integer HLRBRep_Curve::NbPoles() const
0207 {
0208 return HLRBRep_BCurveTool::NbPoles(myCurve);
0209 }
0210
0211 //=======================================================================
0212 // function : NbKnots
0213 // purpose :
0214 //=======================================================================
0215
0216 inline Standard_Integer HLRBRep_Curve::NbKnots() const
0217 {
0218 return HLRBRep_BCurveTool::NbKnots(myCurve);
0219 }
0220
0221 //=======================================================================
0222 // function : IsRational
0223 // purpose :
0224 //=======================================================================
0225
0226 inline Standard_Boolean HLRBRep_Curve::IsRational() const
0227 {
0228 return HLRBRep_BCurveTool::IsRational(myCurve);
0229 }