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 _GEOMAlgo_Tools_HeaderFile
00024 #define _GEOMAlgo_Tools_HeaderFile
00025
00026 #ifndef _Standard_Boolean_HeaderFile
00027 #include <Standard_Boolean.hxx>
00028 #endif
00029 #ifndef _Standard_Integer_HeaderFile
00030 #include <Standard_Integer.hxx>
00031 #endif
00032 #ifndef _Standard_Real_HeaderFile
00033 #include <Standard_Real.hxx>
00034 #endif
00035 #ifndef _Handle_Geom_Surface_HeaderFile
00036 #include <Handle_Geom_Surface.hxx>
00037 #endif
00038 class TopoDS_Shape;
00039 class GEOMAlgo_IndexedDataMapOfPassKeyShapeListOfShape;
00040 class IntTools_Context;
00041 class TopTools_ListOfShape;
00042 class TopTools_IndexedDataMapOfShapeListOfShape;
00043 class gp_Pnt;
00044 class TopoDS_Edge;
00045 class TopoDS_Face;
00046 class Geom_Surface;
00047
00048
00049 #ifndef _Standard_HeaderFile
00050 #include <Standard.hxx>
00051 #endif
00052 #ifndef _Standard_Macro_HeaderFile
00053 #include <Standard_Macro.hxx>
00054 #endif
00055
00056
00057 class GEOMAlgo_Tools {
00058
00059 public:
00060
00061 void* operator new(size_t,void* anAddress)
00062 {
00063 return anAddress;
00064 }
00065 void* operator new(size_t size)
00066 {
00067 return Standard::Allocate(size);
00068 }
00069 void operator delete(void *anAddress)
00070 {
00071 if (anAddress) Standard::Free((Standard_Address&)anAddress);
00072 }
00073
00074
00075
00076
00077 Standard_EXPORT static Standard_Boolean IsCompositeShape(const TopoDS_Shape& aS) ;
00078
00079
00080 Standard_EXPORT static Standard_Integer RefineSDShapes(GEOMAlgo_IndexedDataMapOfPassKeyShapeListOfShape& aMSD,const Standard_Real aTol,IntTools_Context& aCtx) ;
00081
00082
00083 Standard_EXPORT static Standard_Integer FindSDShapes(const TopTools_ListOfShape& aLE,const Standard_Real aTol,TopTools_IndexedDataMapOfShapeListOfShape& aMEE,IntTools_Context& aCtx) ;
00084
00085
00086 Standard_EXPORT static Standard_Integer FindSDShapes(const TopoDS_Shape& aE1,const TopTools_ListOfShape& aLE,const Standard_Real aTol,TopTools_ListOfShape& aLESD,IntTools_Context& aCtx) ;
00087
00088
00089 Standard_EXPORT static Standard_Boolean ProjectPointOnShape(const gp_Pnt& aP1,const TopoDS_Shape& aS,gp_Pnt& aP2,IntTools_Context& aCtx) ;
00090
00091
00092 Standard_EXPORT static void PointOnShape(const TopoDS_Shape& aS,gp_Pnt& aP3D) ;
00093
00094
00095 Standard_EXPORT static void PointOnEdge(const TopoDS_Edge& aE,gp_Pnt& aP3D) ;
00096
00097
00098 Standard_EXPORT static void PointOnEdge(const TopoDS_Edge& aE,const Standard_Real aT,gp_Pnt& aP3D) ;
00099
00100
00101 Standard_EXPORT static void PointOnFace(const TopoDS_Face& aF,gp_Pnt& aP3D) ;
00102
00103
00104 Standard_EXPORT static void PointOnFace(const TopoDS_Face& aF,const Standard_Real aU,const Standard_Real aV,gp_Pnt& aP3D) ;
00105
00106
00107 Standard_EXPORT static void RefinePCurveForEdgeOnFace(const TopoDS_Edge& aE,const TopoDS_Face& aF,const Standard_Real aU1,const Standard_Real aU2) ;
00108
00109
00110 Standard_EXPORT static Standard_Boolean IsUPeriodic(const Handle(Geom_Surface)& aS) ;
00111
00112
00113 Standard_EXPORT static Standard_Boolean CorrectWires(const TopoDS_Shape& aS) ;
00114
00115
00116
00117
00118
00119 protected:
00120
00121
00122
00123
00124
00125
00126
00127
00128
00129 private:
00130
00131
00132
00133
00134
00135
00136
00137
00138
00139 };
00140
00141
00142
00143
00144
00145
00146
00147
00148
00149 #endif