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