File indexing completed on 2025-01-18 10:03:02
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015 #ifndef _BlendFunc_ConstThroat_HeaderFile
0016 #define _BlendFunc_ConstThroat_HeaderFile
0017
0018 #include <Adaptor3d_Surface.hxx>
0019 #include <BlendFunc_GenChamfer.hxx>
0020 #include <math_Vector.hxx>
0021 #include <TColStd_Array1OfReal.hxx>
0022 #include <TColStd_Array1OfInteger.hxx>
0023 #include <TColgp_Array1OfVec2d.hxx>
0024
0025 class math_Matrix;
0026
0027
0028
0029 class BlendFunc_ConstThroat : public BlendFunc_GenChamfer
0030 {
0031 public:
0032
0033 DEFINE_STANDARD_ALLOC
0034
0035
0036 Standard_EXPORT BlendFunc_ConstThroat(const Handle(Adaptor3d_Surface)& S1,
0037 const Handle(Adaptor3d_Surface)& S2,
0038 const Handle(Adaptor3d_Curve)& C);
0039
0040
0041
0042
0043
0044
0045 Standard_EXPORT Standard_Boolean Value (const math_Vector& X, math_Vector& F) Standard_OVERRIDE;
0046
0047
0048
0049
0050
0051 Standard_EXPORT Standard_Boolean Derivatives (const math_Vector& X, math_Matrix& D) Standard_OVERRIDE;
0052
0053 Standard_EXPORT void Set (const Standard_Real Param) Standard_OVERRIDE;
0054
0055 Standard_EXPORT Standard_Boolean IsSolution (const math_Vector& Sol, const Standard_Real Tol) Standard_OVERRIDE;
0056
0057 Standard_EXPORT const gp_Pnt& PointOnS1() const Standard_OVERRIDE;
0058
0059 Standard_EXPORT const gp_Pnt& PointOnS2() const Standard_OVERRIDE;
0060
0061 Standard_EXPORT Standard_Boolean IsTangencyPoint() const Standard_OVERRIDE;
0062
0063 Standard_EXPORT const gp_Vec& TangentOnS1() const Standard_OVERRIDE;
0064
0065 Standard_EXPORT const gp_Vec2d& Tangent2dOnS1() const Standard_OVERRIDE;
0066
0067 Standard_EXPORT const gp_Vec& TangentOnS2() const Standard_OVERRIDE;
0068
0069 Standard_EXPORT const gp_Vec2d& Tangent2dOnS2() const Standard_OVERRIDE;
0070
0071
0072
0073
0074
0075 Standard_EXPORT void Tangent (const Standard_Real U1, const Standard_Real V1, const Standard_Real U2, const Standard_Real V2, gp_Vec& TgFirst, gp_Vec& TgLast, gp_Vec& NormFirst, gp_Vec& NormLast) const Standard_OVERRIDE;
0076
0077
0078 Standard_EXPORT void Set (const Standard_Real aThroat, const Standard_Real, const Standard_Integer Choix) Standard_OVERRIDE;
0079
0080
0081 Standard_EXPORT Standard_Real GetSectionSize() const Standard_OVERRIDE;
0082
0083
0084
0085
0086
0087 protected:
0088
0089 gp_Pnt pts1;
0090 gp_Pnt pts2;
0091 gp_Vec d1u1;
0092 gp_Vec d1v1;
0093 gp_Vec d1u2;
0094 gp_Vec d1v2;
0095 Standard_Boolean istangent;
0096 gp_Vec tg1;
0097 gp_Vec2d tg12d;
0098 gp_Vec tg2;
0099 gp_Vec2d tg22d;
0100 Standard_Real param;
0101 Standard_Real Throat;
0102
0103 gp_Pnt ptgui;
0104 gp_Vec nplan;
0105 Standard_Real normtg;
0106 Standard_Real theD;
0107 gp_Vec d1gui;
0108 gp_Vec d2gui;
0109
0110 private:
0111
0112
0113 };
0114
0115
0116
0117
0118
0119
0120
0121 #endif