File indexing completed on 2025-01-18 10:03:06
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017 #ifndef _BRepAlgo_Loop_HeaderFile
0018 #define _BRepAlgo_Loop_HeaderFile
0019
0020 #include <Standard.hxx>
0021 #include <Standard_DefineAlloc.hxx>
0022
0023 #include <TopoDS_Face.hxx>
0024 #include <TopTools_ListOfShape.hxx>
0025 #include <TopTools_DataMapOfShapeListOfShape.hxx>
0026 #include <TopTools_IndexedDataMapOfShapeListOfShape.hxx>
0027 #include <BRepAlgo_Image.hxx>
0028 class TopoDS_Edge;
0029
0030
0031
0032 class BRepAlgo_Loop
0033 {
0034 public:
0035
0036 DEFINE_STANDARD_ALLOC
0037
0038
0039 Standard_EXPORT BRepAlgo_Loop();
0040
0041
0042
0043 Standard_EXPORT void Init (const TopoDS_Face& F);
0044
0045
0046
0047 Standard_EXPORT void AddEdge (TopoDS_Edge& E, const TopTools_ListOfShape& LV);
0048
0049
0050 Standard_EXPORT void AddConstEdge (const TopoDS_Edge& E);
0051
0052
0053 Standard_EXPORT void AddConstEdges (const TopTools_ListOfShape& LE);
0054
0055
0056 Standard_EXPORT void SetImageVV (const BRepAlgo_Image& theImageVV);
0057
0058
0059 Standard_EXPORT void Perform();
0060
0061
0062 Standard_EXPORT void UpdateVEmap (TopTools_IndexedDataMapOfShapeListOfShape& theVEmap);
0063
0064
0065
0066 Standard_EXPORT void CutEdge (const TopoDS_Edge& E, const TopTools_ListOfShape& VonE, TopTools_ListOfShape& NE) const;
0067
0068
0069
0070 Standard_EXPORT const TopTools_ListOfShape& NewWires() const;
0071
0072
0073 Standard_EXPORT void WiresToFaces();
0074
0075
0076
0077
0078 Standard_EXPORT const TopTools_ListOfShape& NewFaces() const;
0079
0080
0081
0082 Standard_EXPORT const TopTools_ListOfShape& NewEdges (const TopoDS_Edge& E) const;
0083
0084
0085 Standard_EXPORT void GetVerticesForSubstitute (TopTools_DataMapOfShapeShape& VerVerMap) const;
0086
0087 Standard_EXPORT void VerticesForSubstitute (TopTools_DataMapOfShapeShape& VerVerMap);
0088
0089
0090 void SetTolConf(const Standard_Real theTolConf)
0091 {
0092 myTolConf = theTolConf;
0093 }
0094
0095
0096 Standard_Real GetTolConf() const
0097 {
0098 return myTolConf;
0099 }
0100
0101 protected:
0102
0103
0104
0105
0106
0107 private:
0108
0109
0110
0111 TopoDS_Face myFace;
0112 TopTools_ListOfShape myConstEdges;
0113 TopTools_ListOfShape myEdges;
0114 TopTools_DataMapOfShapeListOfShape myVerOnEdges;
0115 TopTools_ListOfShape myNewWires;
0116 TopTools_ListOfShape myNewFaces;
0117 TopTools_DataMapOfShapeListOfShape myCutEdges;
0118 TopTools_DataMapOfShapeShape myVerticesForSubstitute;
0119 BRepAlgo_Image myImageVV;
0120 Standard_Real myTolConf;
0121
0122
0123 };
0124
0125
0126
0127
0128
0129
0130
0131 #endif