Warning, file /include/opencascade/BRepAdaptor_Surface.hxx was not indexed
or was modified since last indexation (in which case cross-reference links may be missing, inaccurate or erroneous).
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017 #ifndef _BRepAdaptor_Surface_HeaderFile
0018 #define _BRepAdaptor_Surface_HeaderFile
0019
0020 #include <GeomAdaptor_Surface.hxx>
0021 #include <GeomAbs_Shape.hxx>
0022 #include <GeomAbs_SurfaceType.hxx>
0023 #include <gp_Trsf.hxx>
0024 #include <TColStd_Array1OfReal.hxx>
0025 #include <TopoDS_Face.hxx>
0026
0027 class gp_Pnt;
0028 class gp_Vec;
0029 class gp_Pln;
0030 class gp_Cylinder;
0031 class gp_Cone;
0032 class gp_Sphere;
0033 class gp_Torus;
0034 class Geom_BezierSurface;
0035 class Geom_BSplineSurface;
0036 class gp_Ax1;
0037 class gp_Dir;
0038
0039 DEFINE_STANDARD_HANDLE(BRepAdaptor_Surface, Adaptor3d_Surface)
0040
0041
0042
0043
0044
0045
0046
0047
0048
0049
0050
0051
0052
0053 class BRepAdaptor_Surface : public Adaptor3d_Surface
0054 {
0055 DEFINE_STANDARD_RTTIEXT(BRepAdaptor_Surface, Adaptor3d_Surface)
0056 public:
0057
0058
0059 Standard_EXPORT BRepAdaptor_Surface();
0060
0061
0062
0063
0064
0065 Standard_EXPORT BRepAdaptor_Surface(const TopoDS_Face& F, const Standard_Boolean R = Standard_True);
0066
0067
0068 Standard_EXPORT virtual Handle(Adaptor3d_Surface) ShallowCopy() const Standard_OVERRIDE;
0069
0070
0071 Standard_EXPORT void Initialize (const TopoDS_Face& F, const Standard_Boolean Restriction = Standard_True);
0072
0073
0074 Standard_EXPORT const GeomAdaptor_Surface& Surface() const;
0075
0076
0077 Standard_EXPORT GeomAdaptor_Surface& ChangeSurface();
0078
0079
0080 Standard_EXPORT const gp_Trsf& Trsf() const;
0081
0082
0083 Standard_EXPORT const TopoDS_Face& Face() const;
0084
0085
0086 Standard_EXPORT Standard_Real Tolerance() const;
0087
0088 virtual Standard_Real FirstUParameter() const Standard_OVERRIDE { return mySurf.FirstUParameter(); }
0089
0090 virtual Standard_Real LastUParameter() const Standard_OVERRIDE { return mySurf.LastUParameter(); }
0091
0092 virtual Standard_Real FirstVParameter() const Standard_OVERRIDE { return mySurf.FirstVParameter(); }
0093
0094 virtual Standard_Real LastVParameter() const Standard_OVERRIDE { return mySurf.LastVParameter(); }
0095
0096 virtual GeomAbs_Shape UContinuity() const Standard_OVERRIDE { return mySurf.UContinuity(); }
0097
0098 virtual GeomAbs_Shape VContinuity() const Standard_OVERRIDE { return mySurf.VContinuity(); }
0099
0100
0101
0102
0103 virtual Standard_Integer NbUIntervals (const GeomAbs_Shape theSh) const Standard_OVERRIDE { return mySurf.NbUIntervals (theSh); }
0104
0105
0106
0107
0108 virtual Standard_Integer NbVIntervals (const GeomAbs_Shape theSh) const Standard_OVERRIDE { return mySurf.NbVIntervals (theSh); }
0109
0110
0111
0112 Standard_EXPORT void UIntervals (TColStd_Array1OfReal& T, const GeomAbs_Shape S) const Standard_OVERRIDE;
0113
0114
0115
0116 Standard_EXPORT void VIntervals (TColStd_Array1OfReal& T, const GeomAbs_Shape S) const Standard_OVERRIDE;
0117
0118
0119
0120
0121
0122
0123 Standard_EXPORT Handle(Adaptor3d_Surface) UTrim (const Standard_Real First, const Standard_Real Last, const Standard_Real Tol) const Standard_OVERRIDE;
0124
0125
0126
0127
0128
0129 Standard_EXPORT Handle(Adaptor3d_Surface) VTrim (const Standard_Real First, const Standard_Real Last, const Standard_Real Tol) const Standard_OVERRIDE;
0130
0131 virtual Standard_Boolean IsUClosed() const Standard_OVERRIDE { return mySurf.IsUClosed(); }
0132
0133 virtual Standard_Boolean IsVClosed() const Standard_OVERRIDE { return mySurf.IsVClosed(); }
0134
0135 virtual Standard_Boolean IsUPeriodic() const Standard_OVERRIDE { return mySurf.IsUPeriodic(); }
0136
0137 virtual Standard_Real UPeriod() const Standard_OVERRIDE { return mySurf.UPeriod(); }
0138
0139 virtual Standard_Boolean IsVPeriodic() const Standard_OVERRIDE { return mySurf.IsVPeriodic(); }
0140
0141 virtual Standard_Real VPeriod() const Standard_OVERRIDE { return mySurf.VPeriod(); }
0142
0143
0144
0145 Standard_EXPORT gp_Pnt Value (const Standard_Real U, const Standard_Real V) const Standard_OVERRIDE;
0146
0147
0148 Standard_EXPORT void D0 (const Standard_Real U, const Standard_Real V, gp_Pnt& P) const Standard_OVERRIDE;
0149
0150
0151
0152
0153
0154 Standard_EXPORT void D1 (const Standard_Real U, const Standard_Real V, gp_Pnt& P, gp_Vec& D1U, gp_Vec& D1V) const Standard_OVERRIDE;
0155
0156
0157
0158
0159
0160 Standard_EXPORT void D2 (const Standard_Real U, const Standard_Real V, gp_Pnt& P, gp_Vec& D1U, gp_Vec& D1V, gp_Vec& D2U, gp_Vec& D2V, gp_Vec& D2UV) const Standard_OVERRIDE;
0161
0162
0163
0164
0165
0166 Standard_EXPORT void D3 (const Standard_Real U, const Standard_Real V, gp_Pnt& P, gp_Vec& D1U, gp_Vec& D1V, gp_Vec& D2U, gp_Vec& D2V, gp_Vec& D2UV, gp_Vec& D3U, gp_Vec& D3V, gp_Vec& D3UUV, gp_Vec& D3UVV) const Standard_OVERRIDE;
0167
0168
0169
0170
0171
0172
0173 Standard_EXPORT gp_Vec DN (const Standard_Real U, const Standard_Real V, const Standard_Integer Nu, const Standard_Integer Nv) const Standard_OVERRIDE;
0174
0175
0176
0177 virtual Standard_Real UResolution (const Standard_Real theR3d) const Standard_OVERRIDE { return mySurf.UResolution (theR3d); }
0178
0179
0180
0181 virtual Standard_Real VResolution (const Standard_Real theR3d) const Standard_OVERRIDE { return mySurf.VResolution (theR3d); }
0182
0183
0184
0185
0186
0187 virtual GeomAbs_SurfaceType GetType() const Standard_OVERRIDE { return mySurf.GetType(); }
0188
0189 Standard_EXPORT gp_Pln Plane() const Standard_OVERRIDE;
0190
0191 Standard_EXPORT gp_Cylinder Cylinder() const Standard_OVERRIDE;
0192
0193 Standard_EXPORT gp_Cone Cone() const Standard_OVERRIDE;
0194
0195 Standard_EXPORT gp_Sphere Sphere() const Standard_OVERRIDE;
0196
0197 Standard_EXPORT gp_Torus Torus() const Standard_OVERRIDE;
0198
0199 virtual Standard_Integer UDegree() const Standard_OVERRIDE { return mySurf.UDegree(); }
0200
0201 virtual Standard_Integer NbUPoles() const Standard_OVERRIDE { return mySurf.NbUPoles(); }
0202
0203 virtual Standard_Integer VDegree() const Standard_OVERRIDE { return mySurf.VDegree(); }
0204
0205 virtual Standard_Integer NbVPoles() const Standard_OVERRIDE { return mySurf.NbVPoles(); }
0206
0207 virtual Standard_Integer NbUKnots() const Standard_OVERRIDE { return mySurf.NbUKnots(); }
0208
0209 virtual Standard_Integer NbVKnots() const Standard_OVERRIDE { return mySurf.NbVKnots(); }
0210
0211 virtual Standard_Boolean IsURational() const Standard_OVERRIDE { return mySurf.IsURational(); }
0212
0213 virtual Standard_Boolean IsVRational() const Standard_OVERRIDE { return mySurf.IsVRational(); }
0214
0215 Standard_EXPORT Handle(Geom_BezierSurface) Bezier() const Standard_OVERRIDE;
0216
0217
0218
0219
0220
0221 Standard_EXPORT Handle(Geom_BSplineSurface) BSpline() const Standard_OVERRIDE;
0222
0223 Standard_EXPORT gp_Ax1 AxeOfRevolution() const Standard_OVERRIDE;
0224
0225 Standard_EXPORT gp_Dir Direction() const Standard_OVERRIDE;
0226
0227
0228
0229
0230
0231 Standard_EXPORT Handle(Adaptor3d_Curve) BasisCurve() const Standard_OVERRIDE;
0232
0233 Standard_EXPORT Handle(Adaptor3d_Surface) BasisSurface() const Standard_OVERRIDE;
0234
0235 Standard_EXPORT Standard_Real OffsetValue() const Standard_OVERRIDE;
0236
0237 private:
0238
0239 GeomAdaptor_Surface mySurf;
0240 gp_Trsf myTrsf;
0241 TopoDS_Face myFace;
0242
0243 };
0244
0245 #endif