Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023 #ifndef _BlockFix_UnionFaces_HeaderFile
00024 #define _BlockFix_UnionFaces_HeaderFile
00025
00026 #ifndef _Standard_Real_HeaderFile
00027 #include <Standard_Real.hxx>
00028 #endif
00029 #ifndef _Standard_Boolean_HeaderFile
00030 #include <Standard_Boolean.hxx>
00031 #endif
00032 #ifndef _Standard_HeaderFile
00033 #include <Standard.hxx>
00034 #endif
00035 #ifndef _Standard_Macro_HeaderFile
00036 #include <Standard_Macro.hxx>
00037 #endif
00038
00039 class TopoDS_Shape;
00040 class TopoDS_Face;
00041
00042 class BlockFix_UnionFaces
00043 {
00044 public:
00045 void* operator new(size_t,void* anAddress)
00046 {
00047 return anAddress;
00048 }
00049 void* operator new(size_t size)
00050 {
00051 return Standard::Allocate(size);
00052 }
00053 void operator delete(void *anAddress)
00054 {
00055 if (anAddress) Standard::Free((Standard_Address&)anAddress);
00056 }
00057
00058
00059
00060 Standard_EXPORT BlockFix_UnionFaces();
00061
00062 Standard_EXPORT Standard_Real& GetTolerance();
00063
00064
00065
00066
00067
00068
00069
00070
00071
00072
00073
00074 Standard_EXPORT Standard_Integer& GetOptimumNbFaces();
00075
00076 Standard_EXPORT TopoDS_Shape Perform(const TopoDS_Shape& Shape);
00077
00078 Standard_EXPORT virtual Standard_Boolean IsSameDomain(const TopoDS_Face& aFace,
00079 const TopoDS_Face& aChekedFace) const;
00080 Standard_EXPORT virtual void MovePCurves(TopoDS_Face& aTarget,
00081 const TopoDS_Face& aSource) const;
00082
00083 private:
00084
00085
00086 Standard_Real myTolerance;
00087 Standard_Integer myOptimumNbFaces;
00088 };
00089
00090 #endif