Warning, file /include/opencascade/Contap_ArcFunction.hxx was not indexed
or was modified since last indexation (in which case cross-reference links may be missing, inaccurate or erroneous).
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017 #ifndef _Contap_ArcFunction_HeaderFile
0018 #define _Contap_ArcFunction_HeaderFile
0019
0020 #include <Adaptor2d_Curve2d.hxx>
0021 #include <Adaptor3d_Surface.hxx>
0022 #include <Contap_TFunction.hxx>
0023 #include <gp_Dir.hxx>
0024 #include <gp_Pnt.hxx>
0025 #include <NCollection_Sequence.hxx>
0026 #include <IntSurf_Quadric.hxx>
0027 #include <math_FunctionWithDerivative.hxx>
0028
0029 class Contap_ArcFunction : public math_FunctionWithDerivative
0030 {
0031 public:
0032 DEFINE_STANDARD_ALLOC
0033
0034 Standard_EXPORT Contap_ArcFunction();
0035
0036 Standard_EXPORT void Set(const occ::handle<Adaptor3d_Surface>& S);
0037
0038 void Set(const gp_Dir& Direction);
0039
0040 void Set(const gp_Dir& Direction, const double Angle);
0041
0042 void Set(const gp_Pnt& Eye);
0043
0044 void Set(const gp_Pnt& Eye, const double Angle);
0045
0046 void Set(const occ::handle<Adaptor2d_Curve2d>& A);
0047
0048 Standard_EXPORT bool Value(const double X, double& F) override;
0049
0050 Standard_EXPORT bool Derivative(const double X, double& D) override;
0051
0052 Standard_EXPORT bool Values(const double X, double& F, double& D) override;
0053
0054 Standard_EXPORT int NbSamples() const;
0055
0056 Standard_EXPORT int GetStateNumber() override;
0057
0058 const gp_Pnt& Valpoint(const int Index) const;
0059
0060 Standard_EXPORT const IntSurf_Quadric& Quadric() const;
0061
0062
0063 const occ::handle<Adaptor3d_Surface>& Surface() const;
0064
0065
0066
0067 const gp_Pnt& LastComputedPoint() const;
0068
0069 private:
0070 occ::handle<Adaptor2d_Curve2d> myArc;
0071 occ::handle<Adaptor3d_Surface> mySurf;
0072 double myMean;
0073 Contap_TFunction myType;
0074 gp_Dir myDir;
0075 double myCosAng;
0076 gp_Pnt myEye;
0077 gp_Pnt solpt;
0078 NCollection_Sequence<gp_Pnt> seqpt;
0079 IntSurf_Quadric myQuad;
0080 };
0081
0082 #include <Contap_ArcFunction.lxx>
0083
0084 #endif