File indexing completed on 2025-01-18 10:02:53
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017 #ifndef _Adaptor3d_IsoCurve_HeaderFile
0018 #define _Adaptor3d_IsoCurve_HeaderFile
0019
0020 #include <Adaptor3d_Surface.hxx>
0021 #include <GeomAbs_IsoType.hxx>
0022
0023 DEFINE_STANDARD_HANDLE(Adaptor3d_IsoCurve, Adaptor3d_Curve)
0024
0025
0026
0027
0028
0029 class Adaptor3d_IsoCurve : public Adaptor3d_Curve
0030 {
0031 DEFINE_STANDARD_RTTIEXT(Adaptor3d_IsoCurve, Adaptor3d_Curve)
0032 public:
0033
0034
0035 Standard_EXPORT Adaptor3d_IsoCurve();
0036
0037
0038 Standard_EXPORT Adaptor3d_IsoCurve(const Handle(Adaptor3d_Surface)& S);
0039
0040
0041
0042
0043
0044 Standard_EXPORT Adaptor3d_IsoCurve(const Handle(Adaptor3d_Surface)& S, const GeomAbs_IsoType Iso, const Standard_Real Param);
0045
0046
0047
0048
0049 Standard_EXPORT Adaptor3d_IsoCurve(const Handle(Adaptor3d_Surface)& S, const GeomAbs_IsoType Iso, const Standard_Real Param, const Standard_Real WFirst, const Standard_Real WLast);
0050
0051
0052 Standard_EXPORT virtual Handle(Adaptor3d_Curve) ShallowCopy() const Standard_OVERRIDE;
0053
0054
0055
0056 Standard_EXPORT void Load (const Handle(Adaptor3d_Surface)& S);
0057
0058
0059 Standard_EXPORT void Load (const GeomAbs_IsoType Iso, const Standard_Real Param);
0060
0061
0062 Standard_EXPORT void Load (const GeomAbs_IsoType Iso, const Standard_Real Param, const Standard_Real WFirst, const Standard_Real WLast);
0063
0064 const Handle(Adaptor3d_Surface)& Surface() const { return mySurface; }
0065
0066 GeomAbs_IsoType Iso() const { return myIso; }
0067
0068 Standard_Real Parameter() const { return myParameter; }
0069
0070 virtual Standard_Real FirstParameter() const Standard_OVERRIDE { return myFirst; }
0071
0072 virtual Standard_Real LastParameter() const Standard_OVERRIDE { return myLast; }
0073
0074 Standard_EXPORT GeomAbs_Shape Continuity() const Standard_OVERRIDE;
0075
0076
0077
0078 Standard_EXPORT Standard_Integer NbIntervals (const GeomAbs_Shape S) const Standard_OVERRIDE;
0079
0080
0081
0082
0083
0084
0085 Standard_EXPORT void Intervals (TColStd_Array1OfReal& T, const GeomAbs_Shape S) const Standard_OVERRIDE;
0086
0087
0088
0089
0090
0091 Standard_EXPORT Handle(Adaptor3d_Curve) Trim (const Standard_Real First, const Standard_Real Last, const Standard_Real Tol) const Standard_OVERRIDE;
0092
0093 Standard_EXPORT Standard_Boolean IsClosed() const Standard_OVERRIDE;
0094
0095 Standard_EXPORT Standard_Boolean IsPeriodic() const Standard_OVERRIDE;
0096
0097 Standard_EXPORT Standard_Real Period() const Standard_OVERRIDE;
0098
0099
0100 Standard_EXPORT gp_Pnt Value (const Standard_Real U) const Standard_OVERRIDE;
0101
0102
0103 Standard_EXPORT void D0 (const Standard_Real U, gp_Pnt& P) const Standard_OVERRIDE;
0104
0105
0106
0107
0108
0109 Standard_EXPORT void D1 (const Standard_Real U, gp_Pnt& P, gp_Vec& V) const Standard_OVERRIDE;
0110
0111
0112
0113
0114
0115
0116 Standard_EXPORT void D2 (const Standard_Real U, gp_Pnt& P, gp_Vec& V1, gp_Vec& V2) const Standard_OVERRIDE;
0117
0118
0119
0120
0121
0122
0123 Standard_EXPORT void D3 (const Standard_Real U, gp_Pnt& P, gp_Vec& V1, gp_Vec& V2, gp_Vec& V3) const Standard_OVERRIDE;
0124
0125
0126
0127
0128
0129
0130
0131 Standard_EXPORT gp_Vec DN (const Standard_Real U, const Standard_Integer N) const Standard_OVERRIDE;
0132
0133
0134
0135 Standard_EXPORT Standard_Real Resolution (const Standard_Real R3d) const Standard_OVERRIDE;
0136
0137
0138
0139
0140 Standard_EXPORT GeomAbs_CurveType GetType() const Standard_OVERRIDE;
0141
0142 Standard_EXPORT gp_Lin Line() const Standard_OVERRIDE;
0143
0144 Standard_EXPORT gp_Circ Circle() const Standard_OVERRIDE;
0145
0146 Standard_EXPORT gp_Elips Ellipse() const Standard_OVERRIDE;
0147
0148 Standard_EXPORT gp_Hypr Hyperbola() const Standard_OVERRIDE;
0149
0150 Standard_EXPORT gp_Parab Parabola() const Standard_OVERRIDE;
0151
0152 Standard_EXPORT Standard_Integer Degree() const Standard_OVERRIDE;
0153
0154 Standard_EXPORT Standard_Boolean IsRational() const Standard_OVERRIDE;
0155
0156 Standard_EXPORT Standard_Integer NbPoles() const Standard_OVERRIDE;
0157
0158 Standard_EXPORT Standard_Integer NbKnots() const Standard_OVERRIDE;
0159
0160 Standard_EXPORT Handle(Geom_BezierCurve) Bezier() const Standard_OVERRIDE;
0161
0162 Standard_EXPORT Handle(Geom_BSplineCurve) BSpline() const Standard_OVERRIDE;
0163
0164 private:
0165
0166 Handle(Adaptor3d_Surface) mySurface;
0167 GeomAbs_IsoType myIso;
0168 Standard_Real myFirst;
0169 Standard_Real myLast;
0170 Standard_Real myParameter;
0171
0172 };
0173
0174 #endif