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
00024
00025
00026
00027 #ifndef ShHealOper_EdgeDivide_HeaderFile
00028 #define ShHealOper_EdgeDivide_HeaderFile
00029
00030 #include <TColStd_HSequenceOfReal.hxx>
00031 #include <TopTools_IndexedDataMapOfShapeListOfShape.hxx>
00032 #include <TopoDS_Edge.hxx>
00033 #include <TopoDS_Shape.hxx>
00034 #include <ShHealOper_Tool.hxx>
00035 #include <TColStd_SequenceOfReal.hxx>
00036
00038
00039
00040 class ShHealOper_EdgeDivide : public ShHealOper_Tool
00041 {
00042 public:
00043
00044
00045
00046 Standard_EXPORT ShHealOper_EdgeDivide () : ShHealOper_Tool() {}
00048
00049 Standard_EXPORT ShHealOper_EdgeDivide (const TopoDS_Shape& theShape);
00051
00052 Standard_EXPORT virtual void Init(const TopoDS_Shape& theShape);
00053
00054
00055 Standard_EXPORT Standard_Boolean Perform(const TopoDS_Shape& theEdge,
00056 const Standard_Real theValue,
00057 const Standard_Boolean theDivideParamMode = Standard_True);
00058
00059
00060
00061
00062
00063
00064 Standard_EXPORT Standard_Boolean Perform(const TopoDS_Shape& theEdge,
00065 const TColStd_SequenceOfReal& theValues,
00066 const Standard_Boolean theDivideParamMode = Standard_True);
00067
00068
00069
00070 protected:
00071
00072
00073
00074 Standard_Boolean build(const Handle(TColStd_HSequenceOfReal)& theValues);
00075
00076 Standard_Boolean computeValues(const Handle(TColStd_HSequenceOfReal)& theValues,
00077 Standard_Boolean& theHas3d,
00078 Standard_Boolean& theHas2d,
00079 Standard_Boolean& hasPCurves);
00080
00081 private:
00082
00083
00084 TopTools_IndexedDataMapOfShapeListOfShape myMapEdgesFace;
00085 Standard_Boolean myDivideParamMode;
00086 TopoDS_Edge myEdge;
00087
00088 public:
00089
00090
00091 };
00092
00093
00094
00095
00096
00097 #endif