File indexing completed on 2026-09-10 09:16:45
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017 #ifndef _GeomAdaptor_SurfaceOfRevolution_HeaderFile
0018 #define _GeomAdaptor_SurfaceOfRevolution_HeaderFile
0019
0020 #include <GeomAdaptor_Surface.hxx>
0021
0022 class gp_Pln;
0023 class gp_Cylinder;
0024 class gp_Cone;
0025 class gp_Sphere;
0026 class gp_Torus;
0027 class Geom_BezierSurface;
0028 class Geom_BSplineSurface;
0029
0030 DEFINE_STANDARD_HANDLE(GeomAdaptor_SurfaceOfRevolution, GeomAdaptor_Surface)
0031
0032
0033
0034
0035
0036
0037
0038
0039
0040
0041
0042
0043
0044
0045
0046
0047
0048 class GeomAdaptor_SurfaceOfRevolution : public GeomAdaptor_Surface
0049 {
0050 DEFINE_STANDARD_RTTIEXT(GeomAdaptor_SurfaceOfRevolution, GeomAdaptor_Surface)
0051 public:
0052 Standard_EXPORT GeomAdaptor_SurfaceOfRevolution();
0053
0054
0055 Standard_EXPORT GeomAdaptor_SurfaceOfRevolution(const Handle(Adaptor3d_Curve)& C);
0056
0057
0058 Standard_EXPORT GeomAdaptor_SurfaceOfRevolution(const Handle(Adaptor3d_Curve)& C,
0059 const gp_Ax1& V);
0060
0061
0062 Standard_EXPORT virtual Handle(Adaptor3d_Surface) ShallowCopy() const Standard_OVERRIDE;
0063
0064
0065 Standard_EXPORT void Load(const Handle(Adaptor3d_Curve)& C);
0066
0067
0068 Standard_EXPORT void Load(const gp_Ax1& V);
0069
0070 Standard_EXPORT gp_Ax1 AxeOfRevolution() const Standard_OVERRIDE;
0071
0072 Standard_EXPORT Standard_Real FirstUParameter() const Standard_OVERRIDE;
0073
0074 Standard_EXPORT Standard_Real LastUParameter() const Standard_OVERRIDE;
0075
0076 Standard_EXPORT Standard_Real FirstVParameter() const Standard_OVERRIDE;
0077
0078 Standard_EXPORT Standard_Real LastVParameter() const Standard_OVERRIDE;
0079
0080 Standard_EXPORT GeomAbs_Shape UContinuity() const Standard_OVERRIDE;
0081
0082
0083 Standard_EXPORT GeomAbs_Shape VContinuity() const Standard_OVERRIDE;
0084
0085
0086
0087 Standard_EXPORT Standard_Integer NbUIntervals(const GeomAbs_Shape S) const Standard_OVERRIDE;
0088
0089
0090
0091 Standard_EXPORT Standard_Integer NbVIntervals(const GeomAbs_Shape S) const Standard_OVERRIDE;
0092
0093
0094
0095 Standard_EXPORT void UIntervals(TColStd_Array1OfReal& T,
0096 const GeomAbs_Shape S) const Standard_OVERRIDE;
0097
0098
0099
0100 Standard_EXPORT void VIntervals(TColStd_Array1OfReal& T,
0101 const GeomAbs_Shape S) const Standard_OVERRIDE;
0102
0103
0104
0105
0106
0107
0108 Standard_EXPORT Handle(Adaptor3d_Surface) UTrim(const Standard_Real First,
0109 const Standard_Real Last,
0110 const Standard_Real Tol) const Standard_OVERRIDE;
0111
0112
0113
0114
0115
0116 Standard_EXPORT Handle(Adaptor3d_Surface) VTrim(const Standard_Real First,
0117 const Standard_Real Last,
0118 const Standard_Real Tol) const Standard_OVERRIDE;
0119
0120 Standard_EXPORT Standard_Boolean IsUClosed() const Standard_OVERRIDE;
0121
0122 Standard_EXPORT Standard_Boolean IsVClosed() const Standard_OVERRIDE;
0123
0124 Standard_EXPORT Standard_Boolean IsUPeriodic() const Standard_OVERRIDE;
0125
0126 Standard_EXPORT Standard_Real UPeriod() const Standard_OVERRIDE;
0127
0128 Standard_EXPORT Standard_Boolean IsVPeriodic() const Standard_OVERRIDE;
0129
0130 Standard_EXPORT Standard_Real VPeriod() const Standard_OVERRIDE;
0131
0132
0133
0134 Standard_EXPORT Standard_Real UResolution(const Standard_Real R3d) const Standard_OVERRIDE;
0135
0136
0137
0138 Standard_EXPORT Standard_Real VResolution(const Standard_Real R3d) const Standard_OVERRIDE;
0139
0140
0141
0142
0143
0144 Standard_EXPORT GeomAbs_SurfaceType GetType() const Standard_OVERRIDE;
0145
0146 Standard_EXPORT gp_Pln Plane() const Standard_OVERRIDE;
0147
0148 Standard_EXPORT gp_Cylinder Cylinder() const Standard_OVERRIDE;
0149
0150
0151
0152 Standard_EXPORT gp_Cone Cone() const Standard_OVERRIDE;
0153
0154 Standard_EXPORT gp_Sphere Sphere() const Standard_OVERRIDE;
0155
0156 Standard_EXPORT gp_Torus Torus() const Standard_OVERRIDE;
0157
0158 Standard_EXPORT Standard_Integer VDegree() const Standard_OVERRIDE;
0159
0160 Standard_EXPORT Standard_Integer NbVPoles() const Standard_OVERRIDE;
0161
0162 Standard_EXPORT Standard_Integer NbVKnots() const Standard_OVERRIDE;
0163
0164 Standard_EXPORT Standard_Boolean IsURational() const Standard_OVERRIDE;
0165
0166 Standard_EXPORT Standard_Boolean IsVRational() const Standard_OVERRIDE;
0167
0168 Standard_EXPORT Handle(Geom_BezierSurface) Bezier() const Standard_OVERRIDE;
0169
0170 Standard_EXPORT Handle(Geom_BSplineSurface) BSpline() const Standard_OVERRIDE;
0171
0172 Standard_EXPORT const gp_Ax3& Axis() const;
0173
0174 Standard_EXPORT Handle(Adaptor3d_Curve) BasisCurve() const Standard_OVERRIDE;
0175
0176 private:
0177 Handle(Adaptor3d_Curve) myBasisCurve;
0178 gp_Ax1 myAxis;
0179 Standard_Boolean myHaveAxis;
0180 gp_Ax3 myAxeRev;
0181 };
0182
0183 #endif