File indexing completed on 2025-01-18 10:03:40
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017 #ifndef _GeomFill_TrihedronLaw_HeaderFile
0018 #define _GeomFill_TrihedronLaw_HeaderFile
0019
0020 #include <Adaptor3d_Curve.hxx>
0021 #include <GeomFill_PipeError.hxx>
0022 #include <GeomAbs_Shape.hxx>
0023 #include <TColStd_Array1OfReal.hxx>
0024
0025 class gp_Vec;
0026
0027
0028 class GeomFill_TrihedronLaw;
0029 DEFINE_STANDARD_HANDLE(GeomFill_TrihedronLaw, Standard_Transient)
0030
0031
0032 class GeomFill_TrihedronLaw : public Standard_Transient
0033 {
0034
0035 public:
0036
0037
0038
0039 Standard_EXPORT virtual Standard_Boolean SetCurve (const Handle(Adaptor3d_Curve)& C);
0040
0041 Standard_EXPORT virtual Handle(GeomFill_TrihedronLaw) Copy() const = 0;
0042
0043
0044
0045 Standard_EXPORT virtual GeomFill_PipeError ErrorStatus() const;
0046
0047
0048 Standard_EXPORT virtual Standard_Boolean D0 (const Standard_Real Param, gp_Vec& Tangent, gp_Vec& Normal, gp_Vec& BiNormal) = 0;
0049
0050
0051
0052
0053 Standard_EXPORT virtual Standard_Boolean D1 (const Standard_Real Param, gp_Vec& Tangent, gp_Vec& DTangent, gp_Vec& Normal, gp_Vec& DNormal, gp_Vec& BiNormal, gp_Vec& DBiNormal);
0054
0055
0056
0057
0058 Standard_EXPORT virtual Standard_Boolean D2 (const Standard_Real Param, gp_Vec& Tangent, gp_Vec& DTangent, gp_Vec& D2Tangent, gp_Vec& Normal, gp_Vec& DNormal, gp_Vec& D2Normal, gp_Vec& BiNormal, gp_Vec& DBiNormal, gp_Vec& D2BiNormal);
0059
0060
0061
0062
0063 Standard_EXPORT virtual Standard_Integer NbIntervals (const GeomAbs_Shape S) const = 0;
0064
0065
0066
0067
0068
0069
0070 Standard_EXPORT virtual void Intervals (TColStd_Array1OfReal& T, const GeomAbs_Shape S) const = 0;
0071
0072
0073
0074
0075
0076 Standard_EXPORT virtual void SetInterval (const Standard_Real First, const Standard_Real Last);
0077
0078
0079
0080 Standard_EXPORT void GetInterval (Standard_Real& First, Standard_Real& Last);
0081
0082
0083
0084 Standard_EXPORT virtual void GetAverageLaw (gp_Vec& ATangent, gp_Vec& ANormal, gp_Vec& ABiNormal) = 0;
0085
0086
0087 Standard_EXPORT virtual Standard_Boolean IsConstant() const;
0088
0089
0090
0091
0092 Standard_EXPORT virtual Standard_Boolean IsOnlyBy3dCurve() const;
0093
0094
0095
0096
0097 DEFINE_STANDARD_RTTIEXT(GeomFill_TrihedronLaw,Standard_Transient)
0098
0099 protected:
0100
0101
0102 Handle(Adaptor3d_Curve) myCurve;
0103 Handle(Adaptor3d_Curve) myTrimmed;
0104
0105
0106 private:
0107
0108
0109
0110
0111 };
0112
0113
0114
0115
0116
0117
0118
0119 #endif