File indexing completed on 2026-09-22 08:57:51
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017 #ifndef _Geom2dGcc_FunctionTanCuCuCu_HeaderFile
0018 #define _Geom2dGcc_FunctionTanCuCuCu_HeaderFile
0019
0020 #include <Standard.hxx>
0021 #include <Standard_DefineAlloc.hxx>
0022
0023 #include <Geom2dAdaptor_Curve.hxx>
0024 #include <gp_Circ2d.hxx>
0025 #include <gp_Lin2d.hxx>
0026 #include <Geom2dGcc_Type1.hxx>
0027 #include <math_FunctionSetWithDerivatives.hxx>
0028 #include <math_Vector.hxx>
0029 class gp_Pnt2d;
0030 class gp_Vec2d;
0031 class math_Matrix;
0032
0033
0034
0035 class Geom2dGcc_FunctionTanCuCuCu : public math_FunctionSetWithDerivatives
0036 {
0037 public:
0038 DEFINE_STANDARD_ALLOC
0039
0040 Standard_EXPORT Geom2dGcc_FunctionTanCuCuCu(const Geom2dAdaptor_Curve& C1,
0041 const Geom2dAdaptor_Curve& C2,
0042 const Geom2dAdaptor_Curve& C3);
0043
0044 Standard_EXPORT Geom2dGcc_FunctionTanCuCuCu(const gp_Circ2d& C1,
0045 const Geom2dAdaptor_Curve& C2,
0046 const Geom2dAdaptor_Curve& C3);
0047
0048 Standard_EXPORT Geom2dGcc_FunctionTanCuCuCu(const gp_Circ2d& C1,
0049 const gp_Circ2d& C2,
0050 const Geom2dAdaptor_Curve& C3);
0051
0052 Standard_EXPORT Geom2dGcc_FunctionTanCuCuCu(const gp_Circ2d& C1,
0053 const gp_Lin2d& L2,
0054 const Geom2dAdaptor_Curve& C3);
0055
0056 Standard_EXPORT Geom2dGcc_FunctionTanCuCuCu(const gp_Lin2d& L1,
0057 const gp_Lin2d& L2,
0058 const Geom2dAdaptor_Curve& C3);
0059
0060 Standard_EXPORT Geom2dGcc_FunctionTanCuCuCu(const gp_Lin2d& L1,
0061 const Geom2dAdaptor_Curve& C2,
0062 const Geom2dAdaptor_Curve& C3);
0063
0064 Standard_EXPORT Geom2dGcc_FunctionTanCuCuCu(const gp_Circ2d& C1,
0065 const Geom2dAdaptor_Curve& C2,
0066 const gp_Pnt2d& P3);
0067
0068 Standard_EXPORT Geom2dGcc_FunctionTanCuCuCu(const gp_Lin2d& L1,
0069 const Geom2dAdaptor_Curve& C2,
0070 const gp_Pnt2d& P3);
0071
0072 Standard_EXPORT Geom2dGcc_FunctionTanCuCuCu(const Geom2dAdaptor_Curve& C1,
0073 const gp_Pnt2d& P2,
0074 const gp_Pnt2d& P3);
0075
0076 Standard_EXPORT void InitDerivative(const math_Vector& X,
0077 gp_Pnt2d& Point1,
0078 gp_Pnt2d& Point2,
0079 gp_Pnt2d& Point3,
0080 gp_Vec2d& Tan1,
0081 gp_Vec2d& Tan2,
0082 gp_Vec2d& Tan3,
0083 gp_Vec2d& D21,
0084 gp_Vec2d& D22,
0085 gp_Vec2d& D23);
0086
0087
0088 Standard_EXPORT int NbVariables() const override;
0089
0090
0091 Standard_EXPORT int NbEquations() const override;
0092
0093
0094 Standard_EXPORT bool Value(const math_Vector& X, math_Vector& F) override;
0095
0096
0097 Standard_EXPORT bool Derivatives(const math_Vector& X, math_Matrix& D) override;
0098
0099
0100
0101 Standard_EXPORT bool Values(const math_Vector& X, math_Vector& F, math_Matrix& D) override;
0102
0103 private:
0104 Geom2dAdaptor_Curve Curv1;
0105 Geom2dAdaptor_Curve Curv2;
0106 Geom2dAdaptor_Curve Curv3;
0107 gp_Circ2d Circ1;
0108 gp_Circ2d Circ2;
0109 gp_Lin2d Lin1;
0110 gp_Lin2d Lin2;
0111 Geom2dGcc_Type1 TheType;
0112 };
0113
0114 #endif