File indexing completed on 2025-01-18 10:04:56
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017 #ifndef _ShapeFix_Solid_HeaderFile
0018 #define _ShapeFix_Solid_HeaderFile
0019
0020 #include <Standard.hxx>
0021 #include <Standard_Type.hxx>
0022
0023 #include <TopoDS_Shape.hxx>
0024 #include <Standard_Integer.hxx>
0025 #include <ShapeFix_Root.hxx>
0026 #include <ShapeExtend_Status.hxx>
0027 class ShapeFix_Shell;
0028 class TopoDS_Solid;
0029 class TopoDS_Shell;
0030 class ShapeExtend_BasicMsgRegistrator;
0031
0032
0033 #ifdef Status
0034 #undef Status
0035 #endif
0036
0037 class ShapeFix_Solid;
0038 DEFINE_STANDARD_HANDLE(ShapeFix_Solid, ShapeFix_Root)
0039
0040
0041
0042 class ShapeFix_Solid : public ShapeFix_Root
0043 {
0044
0045 public:
0046
0047
0048
0049 Standard_EXPORT ShapeFix_Solid();
0050
0051
0052 Standard_EXPORT ShapeFix_Solid(const TopoDS_Solid& solid);
0053
0054
0055 Standard_EXPORT virtual void Init (const TopoDS_Solid& solid);
0056
0057
0058
0059
0060
0061 Standard_EXPORT virtual Standard_Boolean Perform (const Message_ProgressRange& theProgress = Message_ProgressRange());
0062
0063
0064 Standard_EXPORT TopoDS_Solid SolidFromShell (const TopoDS_Shell& shell);
0065
0066
0067 Standard_EXPORT Standard_Boolean Status (const ShapeExtend_Status status) const;
0068
0069
0070 Standard_EXPORT TopoDS_Shape Solid() const;
0071
0072
0073 Handle(ShapeFix_Shell) FixShellTool() const
0074 {
0075 return myFixShell;
0076 }
0077
0078
0079 Standard_EXPORT virtual void SetMsgRegistrator (const Handle(ShapeExtend_BasicMsgRegistrator)& msgreg) Standard_OVERRIDE;
0080
0081
0082 Standard_EXPORT virtual void SetPrecision (const Standard_Real preci) Standard_OVERRIDE;
0083
0084
0085 Standard_EXPORT virtual void SetMinTolerance (const Standard_Real mintol) Standard_OVERRIDE;
0086
0087
0088 Standard_EXPORT virtual void SetMaxTolerance (const Standard_Real maxtol) Standard_OVERRIDE;
0089
0090
0091
0092 Standard_Integer& FixShellMode()
0093 {
0094 return myFixShellMode;
0095 }
0096
0097
0098
0099 Standard_Integer& FixShellOrientationMode()
0100 {
0101 return myFixShellOrientationMode;
0102 }
0103
0104
0105
0106
0107
0108
0109 Standard_Boolean& CreateOpenSolidMode()
0110 {
0111 return myCreateOpenSolidMode;
0112 }
0113
0114
0115
0116 Standard_EXPORT TopoDS_Shape Shape();
0117
0118 DEFINE_STANDARD_RTTIEXT(ShapeFix_Solid,ShapeFix_Root)
0119
0120 protected:
0121 TopoDS_Shape mySolid;
0122 Handle(ShapeFix_Shell) myFixShell;
0123 Standard_Integer myStatus;
0124 Standard_Integer myFixShellMode;
0125 Standard_Integer myFixShellOrientationMode;
0126 Standard_Boolean myCreateOpenSolidMode;
0127 };
0128
0129 #endif