File indexing completed on 2026-09-21 09:16:29
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017 #ifndef _BRepFeat_MakeRevol_HeaderFile
0018 #define _BRepFeat_MakeRevol_HeaderFile
0019
0020 #include <Standard.hxx>
0021 #include <Standard_DefineAlloc.hxx>
0022 #include <Standard_Handle.hxx>
0023
0024 #include <TopoDS_Shape.hxx>
0025 #include <NCollection_List.hxx>
0026 #include <TopTools_ShapeMapHasher.hxx>
0027 #include <NCollection_DataMap.hxx>
0028 #include <gp_Ax1.hxx>
0029 #include <BRepFeat_StatusError.hxx>
0030 #include <BRepFeat_Form.hxx>
0031 #include <Standard_Integer.hxx>
0032 class Geom_Curve;
0033 class TopoDS_Face;
0034 class TopoDS_Edge;
0035
0036
0037 class BRepFeat_MakeRevol : public BRepFeat_Form
0038 {
0039 public:
0040 DEFINE_STANDARD_ALLOC
0041
0042
0043 BRepFeat_MakeRevol();
0044
0045
0046
0047
0048
0049
0050
0051
0052
0053
0054 BRepFeat_MakeRevol(const TopoDS_Shape& Sbase,
0055 const TopoDS_Shape& Pbase,
0056 const TopoDS_Face& Skface,
0057 const gp_Ax1& Axis,
0058 const int Fuse,
0059 const bool Modify);
0060
0061 Standard_EXPORT void Init(const TopoDS_Shape& Sbase,
0062 const TopoDS_Shape& Pbase,
0063 const TopoDS_Face& Skface,
0064 const gp_Ax1& Axis,
0065 const int Fuse,
0066 const bool Modify);
0067
0068
0069
0070
0071 Standard_EXPORT void Add(const TopoDS_Edge& E, const TopoDS_Face& OnFace);
0072
0073 Standard_EXPORT void Perform(const double Angle);
0074
0075 Standard_EXPORT void Perform(const TopoDS_Shape& Until);
0076
0077
0078 Standard_EXPORT void Perform(const TopoDS_Shape& From, const TopoDS_Shape& Until);
0079
0080
0081
0082 Standard_EXPORT void PerformThruAll();
0083
0084
0085
0086
0087 Standard_EXPORT void PerformUntilAngle(const TopoDS_Shape& Until, const double Angle);
0088
0089 Standard_EXPORT void Curves(NCollection_Sequence<occ::handle<Geom_Curve>>& S) override;
0090
0091 Standard_EXPORT occ::handle<Geom_Curve> BarycCurve() override;
0092
0093 private:
0094 TopoDS_Shape myPbase;
0095 NCollection_DataMap<TopoDS_Shape, NCollection_List<TopoDS_Shape>, TopTools_ShapeMapHasher>
0096 mySlface;
0097 gp_Ax1 myAxis;
0098 NCollection_Sequence<occ::handle<Geom_Curve>> myCurves;
0099 occ::handle<Geom_Curve> myBCurve;
0100 BRepFeat_StatusError myStatusError;
0101 };
0102
0103 #include <BRepFeat_MakeRevol.lxx>
0104
0105 #endif