1
0
mirror of https://git.dev.opencascade.org/repos/occt.git synced 2025-04-21 10:13:43 +03:00

0032328: Missing include of TopoDS_Edge.hxx in ShapeUpgrade_UnifySameDomain.hxx

This commit is contained in:
kgv 2021-09-06 10:36:38 +03:00 committed by smoskvin
parent 41e2eed0fc
commit 5e76328243
2 changed files with 30 additions and 19 deletions

View File

@ -13,6 +13,7 @@
// Alternatively, this file may be used under the terms of Open CASCADE // Alternatively, this file may be used under the terms of Open CASCADE
// commercial license or contractual agreement. // commercial license or contractual agreement.
#include <ShapeUpgrade_UnifySameDomain.hxx>
#include <BRep_Builder.hxx> #include <BRep_Builder.hxx>
#include <BRep_Tool.hxx> #include <BRep_Tool.hxx>
@ -61,7 +62,6 @@
#include <ShapeFix_Face.hxx> #include <ShapeFix_Face.hxx>
#include <ShapeFix_Shell.hxx> #include <ShapeFix_Shell.hxx>
#include <ShapeFix_Wire.hxx> #include <ShapeFix_Wire.hxx>
#include <ShapeUpgrade_UnifySameDomain.hxx>
#include <Standard_Type.hxx> #include <Standard_Type.hxx>
#include <TColGeom2d_Array1OfBSplineCurve.hxx> #include <TColGeom2d_Array1OfBSplineCurve.hxx>
#include <TColGeom2d_HArray1OfBSplineCurve.hxx> #include <TColGeom2d_HArray1OfBSplineCurve.hxx>
@ -2235,13 +2235,17 @@ static Standard_Boolean GetLineEdgePoints(const TopoDS_Edge& theInpEdge, gp_Pnt&
return Standard_True; return Standard_True;
} }
//======================================================================= struct ShapeUpgrade_UnifySameDomain::SubSequenceOfEdges
//function : GenerateSubSeq {
//purpose : Generates sub-sequences of edges from sequence of edges TopTools_SequenceOfShape SeqsEdges;
//Edges from each subsequences can be merged into the one edge TopoDS_Edge UnionEdges;
//======================================================================= };
static void GenerateSubSeq (const TopTools_SequenceOfShape& anInpEdgeSeq, //=======================================================================
//function : generateSubSeq
//purpose :
//=======================================================================
void ShapeUpgrade_UnifySameDomain::generateSubSeq (const TopTools_SequenceOfShape& anInpEdgeSeq,
NCollection_Sequence<SubSequenceOfEdges>& SeqOfSubSeqOfEdges, NCollection_Sequence<SubSequenceOfEdges>& SeqOfSubSeqOfEdges,
Standard_Boolean IsClosed, double theAngTol, double theLinTol, Standard_Boolean IsClosed, double theAngTol, double theLinTol,
const TopTools_MapOfShape& AvoidEdgeVrt, const TopTools_MapOfShape& AvoidEdgeVrt,
@ -2377,7 +2381,7 @@ Standard_Boolean ShapeUpgrade_UnifySameDomain::MergeEdges(TopTools_SequenceOfSha
// split chain by vertices at which merging is not possible // split chain by vertices at which merging is not possible
NCollection_Sequence<SubSequenceOfEdges> aOneSeq; NCollection_Sequence<SubSequenceOfEdges> aOneSeq;
GenerateSubSeq(aChain, aOneSeq, IsClosed, myAngTol, myLinTol, VerticesToAvoid, theVFmap); generateSubSeq(aChain, aOneSeq, IsClosed, myAngTol, myLinTol, VerticesToAvoid, theVFmap);
// put sub-chains in the result // put sub-chains in the result
SeqOfSubSeqOfEdges.Append(aOneSeq); SeqOfSubSeqOfEdges.Append(aOneSeq);

View File

@ -65,13 +65,6 @@ DEFINE_STANDARD_HANDLE(ShapeUpgrade_UnifySameDomain, Standard_Transient)
//! The algorithm provides a place holder for the history and collects the //! The algorithm provides a place holder for the history and collects the
//! history by default. //! history by default.
//! To avoid collecting of the history the place holder should be set to null handle. //! To avoid collecting of the history the place holder should be set to null handle.
struct SubSequenceOfEdges
{
TopTools_SequenceOfShape SeqsEdges;
TopoDS_Edge UnionEdges;
};
class ShapeUpgrade_UnifySameDomain : public Standard_Transient class ShapeUpgrade_UnifySameDomain : public Standard_Transient
{ {
@ -161,6 +154,10 @@ public:
DEFINE_STANDARD_RTTIEXT(ShapeUpgrade_UnifySameDomain,Standard_Transient) DEFINE_STANDARD_RTTIEXT(ShapeUpgrade_UnifySameDomain,Standard_Transient)
protected:
struct SubSequenceOfEdges;
protected: protected:
//! This method makes if possible a common face from each //! This method makes if possible a common face from each
@ -198,6 +195,16 @@ protected:
//! Fills the history of the modifications during the operation. //! Fills the history of the modifications during the operation.
Standard_EXPORT void FillHistory(); Standard_EXPORT void FillHistory();
private:
//! Generates sub-sequences of edges from sequence of edges.
//! Edges from each subsequences can be merged into the one edge.
static void generateSubSeq (const TopTools_SequenceOfShape& anInpEdgeSeq,
NCollection_Sequence<SubSequenceOfEdges>& SeqOfSubSeqOfEdges,
Standard_Boolean IsClosed, double theAngTol, double theLinTol,
const TopTools_MapOfShape& AvoidEdgeVrt,
const TopTools_IndexedDataMapOfShapeListOfShape& theVFmap);
private: private:
TopoDS_Shape myInitShape; TopoDS_Shape myInitShape;