File indexing completed on 2026-09-09 09:16:03
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017 #ifndef _Law_Linear_HeaderFile
0018 #define _Law_Linear_HeaderFile
0019
0020 #include <Standard.hxx>
0021 #include <Standard_Type.hxx>
0022
0023 #include <Law_Function.hxx>
0024 #include <GeomAbs_Shape.hxx>
0025 #include <Standard_Integer.hxx>
0026 #include <TColStd_Array1OfReal.hxx>
0027
0028 class Law_Linear;
0029 DEFINE_STANDARD_HANDLE(Law_Linear, Law_Function)
0030
0031
0032 class Law_Linear : public Law_Function
0033 {
0034
0035 public:
0036
0037 Standard_EXPORT Law_Linear();
0038
0039
0040
0041
0042
0043 Standard_EXPORT void Set(const Standard_Real Pdeb,
0044 const Standard_Real Valdeb,
0045 const Standard_Real Pfin,
0046 const Standard_Real Valfin);
0047
0048
0049 Standard_EXPORT GeomAbs_Shape Continuity() const Standard_OVERRIDE;
0050
0051
0052 Standard_EXPORT Standard_Integer NbIntervals(const GeomAbs_Shape S) const Standard_OVERRIDE;
0053
0054 Standard_EXPORT void Intervals(TColStd_Array1OfReal& T,
0055 const GeomAbs_Shape S) const Standard_OVERRIDE;
0056
0057
0058 Standard_EXPORT Standard_Real Value(const Standard_Real X) Standard_OVERRIDE;
0059
0060
0061
0062 Standard_EXPORT void D1(const Standard_Real X,
0063 Standard_Real& F,
0064 Standard_Real& D) Standard_OVERRIDE;
0065
0066
0067
0068 Standard_EXPORT void D2(const Standard_Real X,
0069 Standard_Real& F,
0070 Standard_Real& D,
0071 Standard_Real& D2) Standard_OVERRIDE;
0072
0073
0074
0075
0076
0077
0078
0079 Standard_EXPORT Handle(Law_Function) Trim(const Standard_Real PFirst,
0080 const Standard_Real PLast,
0081 const Standard_Real Tol) const Standard_OVERRIDE;
0082
0083
0084 Standard_EXPORT void Bounds(Standard_Real& PFirst, Standard_Real& PLast) Standard_OVERRIDE;
0085
0086 DEFINE_STANDARD_RTTIEXT(Law_Linear, Law_Function)
0087
0088 protected:
0089 private:
0090 Standard_Real valdeb;
0091 Standard_Real valfin;
0092 Standard_Real pdeb;
0093 Standard_Real pfin;
0094 };
0095
0096 #endif