File indexing completed on 2025-01-18 10:02:56
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015 #ifndef AppCont_Function_HeaderFile
0016 #define AppCont_Function_HeaderFile
0017
0018 #include <gp_Pnt.hxx>
0019 #include <gp_Pnt2d.hxx>
0020 #include <gp_Vec.hxx>
0021 #include <gp_Vec2d.hxx>
0022 #include <NCollection_Array1.hxx>
0023 #include <Standard_Integer.hxx>
0024
0025
0026
0027 class AppCont_Function
0028 {
0029 public:
0030
0031 AppCont_Function()
0032 {
0033 myNbPnt = -1;
0034 myNbPnt2d = -1;
0035 }
0036
0037
0038 void GetNumberOfPoints(Standard_Integer& theNbPnt, Standard_Integer& theNbPnt2d) const
0039 {
0040 theNbPnt = myNbPnt;
0041 theNbPnt2d = myNbPnt2d;
0042 }
0043
0044
0045 Standard_Integer GetNbOf3dPoints() const
0046 {
0047 return myNbPnt;
0048 }
0049
0050
0051 Standard_Integer GetNbOf2dPoints() const
0052 {
0053 return myNbPnt2d;
0054 }
0055
0056
0057 virtual ~AppCont_Function() {}
0058
0059
0060 virtual Standard_Real FirstParameter() const = 0;
0061
0062
0063 virtual Standard_Real LastParameter() const = 0;
0064
0065
0066 virtual Standard_Boolean Value (const Standard_Real theU,
0067 NCollection_Array1<gp_Pnt2d>& thePnt2d,
0068 NCollection_Array1<gp_Pnt>& thePnt) const = 0;
0069
0070
0071 virtual Standard_Boolean D1 (const Standard_Real theU,
0072 NCollection_Array1<gp_Vec2d>& theVec2d,
0073 NCollection_Array1<gp_Vec>& theVec) const = 0;
0074
0075
0076
0077 virtual void PeriodInformation (const Standard_Integer ,
0078 Standard_Boolean& IsPeriodic,
0079 Standard_Real& thePeriod) const
0080 {
0081 IsPeriodic = Standard_False;
0082 thePeriod = 0.0;
0083 };
0084
0085
0086 protected:
0087 Standard_Integer myNbPnt;
0088 Standard_Integer myNbPnt2d;
0089 };
0090
0091 #endif