File indexing completed on 2026-10-22 09:33:06
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017 #ifndef _BRepOffset_Inter2d_HeaderFile
0018 #define _BRepOffset_Inter2d_HeaderFile
0019
0020 #include <TopTools_ShapeMapHasher.hxx>
0021 #include <NCollection_IndexedMap.hxx>
0022 #include <TopoDS_Shape.hxx>
0023 #include <NCollection_DataMap.hxx>
0024 #include <NCollection_List.hxx>
0025 #include <NCollection_IndexedDataMap.hxx>
0026 #include <Message_ProgressRange.hxx>
0027
0028 class BRepAlgo_AsDes;
0029 class BRepAlgo_Image;
0030 class BRepOffset_Analyse;
0031 class BRepOffset_Offset;
0032 class TopoDS_Edge;
0033 class TopoDS_Face;
0034
0035
0036
0037 class BRepOffset_Inter2d
0038 {
0039 public:
0040 DEFINE_STANDARD_ALLOC
0041
0042
0043
0044
0045
0046
0047
0048 Standard_EXPORT static void Compute(
0049 const occ::handle<BRepAlgo_AsDes>& AsDes,
0050 const TopoDS_Face& F,
0051 const NCollection_IndexedMap<TopoDS_Shape, TopTools_ShapeMapHasher>& NewEdges,
0052 const double Tol,
0053 const NCollection_DataMap<TopoDS_Shape,
0054 NCollection_List<TopoDS_Shape>,
0055 TopTools_ShapeMapHasher>& theEdgeIntEdges,
0056 NCollection_IndexedDataMap<TopoDS_Shape,
0057 NCollection_List<TopoDS_Shape>,
0058 TopTools_ShapeMapHasher>& theDMVV,
0059 const Message_ProgressRange& theRange);
0060
0061
0062
0063
0064
0065
0066 Standard_EXPORT static bool ConnexIntByInt(
0067 const TopoDS_Face& FI,
0068 BRepOffset_Offset& OFI,
0069 NCollection_DataMap<TopoDS_Shape, TopoDS_Shape, TopTools_ShapeMapHasher>& MES,
0070 const NCollection_DataMap<TopoDS_Shape, TopoDS_Shape, TopTools_ShapeMapHasher>& Build,
0071 const occ::handle<BRepAlgo_AsDes>& theAsDes,
0072 const occ::handle<BRepAlgo_AsDes>& AsDes2d,
0073 const double Offset,
0074 const double Tol,
0075 const BRepOffset_Analyse& Analyse,
0076 NCollection_IndexedMap<TopoDS_Shape, TopTools_ShapeMapHasher>& FacesWithVerts,
0077 BRepAlgo_Image& theImageVV,
0078 NCollection_DataMap<TopoDS_Shape, NCollection_List<TopoDS_Shape>, TopTools_ShapeMapHasher>&
0079 theEdgeIntEdges,
0080 NCollection_IndexedDataMap<TopoDS_Shape,
0081 NCollection_List<TopoDS_Shape>,
0082 TopTools_ShapeMapHasher>& theDMVV,
0083 const Message_ProgressRange& theRange);
0084
0085
0086
0087
0088
0089
0090
0091 Standard_EXPORT static void ConnexIntByIntInVert(
0092 const TopoDS_Face& FI,
0093 BRepOffset_Offset& OFI,
0094 NCollection_DataMap<TopoDS_Shape, TopoDS_Shape, TopTools_ShapeMapHasher>& MES,
0095 const NCollection_DataMap<TopoDS_Shape, TopoDS_Shape, TopTools_ShapeMapHasher>& Build,
0096 const occ::handle<BRepAlgo_AsDes>& AsDes,
0097 const occ::handle<BRepAlgo_AsDes>& AsDes2d,
0098 const double Tol,
0099 const BRepOffset_Analyse& Analyse,
0100 NCollection_IndexedDataMap<TopoDS_Shape,
0101 NCollection_List<TopoDS_Shape>,
0102 TopTools_ShapeMapHasher>& theDMVV,
0103 const Message_ProgressRange& theRange);
0104
0105
0106
0107
0108 Standard_EXPORT static bool FuseVertices(
0109 const NCollection_IndexedDataMap<TopoDS_Shape,
0110 NCollection_List<TopoDS_Shape>,
0111 TopTools_ShapeMapHasher>& theDMVV,
0112 const occ::handle<BRepAlgo_AsDes>& theAsDes,
0113 BRepAlgo_Image& theImageVV);
0114
0115
0116 Standard_EXPORT static bool ExtentEdge(const TopoDS_Edge& E,
0117 TopoDS_Edge& NE,
0118 const double theOffset);
0119 };
0120
0121 #endif