mirror of
https://git.dev.opencascade.org/repos/occt.git
synced 2025-08-14 13:30:48 +03:00
0033370: Foundation Classes - Moving into STL and Boost functionality
NCollection containers update: - NCollection_Array1 - updated functionality - NCollection_Array2 - NCollection_Array1 as a wrapper for 2array - NCollection_Vector -> NCollection_DynamicArray was renamed and reworked. TCollection: - Use static empty string to avoid allocations on empty string NCollection allocators update: - NCollection_Allocator - allocator that used Standard::Allocate - NCollection_OccAllocator - allocator-wrapper that used OCC BaseAllocator objects - NCollection_IncAllocator - rework to increase performance Standard: - Rework functionality to use different allocation libs - Implement basic of new way to wrap allocations tools - Define 4 ways to allocation (defines in configure stage) Additional changes: - Hash function uses std::hash functionality - size_t as a hash value - New HashUtils with Murmur and FVN hash algo for x32 and x64 - Deprecated _0.cxx and .gxx DE classes reorganized - Create own utility for std memory - Update Standard_Transient to be more platform-independent Math TK changes: - math_Vector -> match_BaseVector<> - Buffer decreased to cash 32 elements instead of 512
This commit is contained in:
@@ -4720,7 +4720,7 @@ Standard_Boolean BuildShellsCompleteInter(const TopTools_ListOfShape& theLF,
|
||||
const TopoDS_Shape& aFR = aItLR.Value();
|
||||
|
||||
// Reset the local allocator
|
||||
anAllocLoc->Reset();
|
||||
anAllocLoc->Reset(false);
|
||||
// Find the last splits of the root face, including the ones
|
||||
// created during MakeVolume operation
|
||||
TopTools_ListOfShape aLFIm(anAllocLoc);
|
||||
@@ -4739,7 +4739,7 @@ Standard_Boolean BuildShellsCompleteInter(const TopTools_ListOfShape& theLF,
|
||||
}
|
||||
|
||||
// Reset the local allocator
|
||||
anAllocLoc->Reset();
|
||||
anAllocLoc->Reset(false);
|
||||
// It is necessary to rebuild the solids, avoiding internal faces
|
||||
// Map faces to solids
|
||||
TopTools_IndexedDataMapOfShapeListOfShape aDMFS(1, anAllocLoc);
|
||||
@@ -4787,7 +4787,7 @@ Standard_Boolean BuildShellsCompleteInter(const TopTools_ListOfShape& theLF,
|
||||
//
|
||||
aLF.Clear();
|
||||
aDMFS.Clear();
|
||||
anAllocLoc->Reset();
|
||||
anAllocLoc->Reset(true);
|
||||
|
||||
// the result is non-manifold - resolve it comparing normal
|
||||
// directions of the offset faces and original faces
|
||||
@@ -4896,7 +4896,7 @@ const TopTools_ListOfShape& BRepOffset_MakeOffset::Generated (const TopoDS_Shape
|
||||
// Useful only for faces without influence on others.
|
||||
TopTools_ListIteratorOfListOfShape it(myGenerated);
|
||||
for (; it.More(); it.Next())
|
||||
it.Value().Reverse();
|
||||
it.ChangeValue().Reverse();
|
||||
}
|
||||
}
|
||||
break;
|
||||
@@ -4951,7 +4951,7 @@ const TopTools_ListOfShape& BRepOffset_MakeOffset::Modified (const TopoDS_Shape&
|
||||
// Useful only for faces without influence on others.
|
||||
TopTools_ListIteratorOfListOfShape it(myGenerated);
|
||||
for (; it.More(); it.Next())
|
||||
it.Value().Reverse();
|
||||
it.ChangeValue().Reverse();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@@ -17,13 +17,16 @@
|
||||
#define _BRepOffset_SimpleOffset_HeaderFile
|
||||
|
||||
#include <BRepTools_Modification.hxx>
|
||||
#include <GeomAbs_Shape.hxx>
|
||||
#include <Geom2d_Curve.hxx>
|
||||
#include <Standard_Real.hxx>
|
||||
#include <Standard_Macro.hxx>
|
||||
#include <Standard_Type.hxx>
|
||||
#include <TopTools_IndexedDataMapOfShapeListOfShape.hxx>
|
||||
#include <GeomAbs_Shape.hxx>
|
||||
#include <NCollection_DataMap.hxx>
|
||||
#include <Standard_Macro.hxx>
|
||||
#include <Standard_Real.hxx>
|
||||
#include <Standard_Type.hxx>
|
||||
#include <TopoDS_Edge.hxx>
|
||||
#include <TopoDS_Face.hxx>
|
||||
#include <TopoDS_Vertex.hxx>
|
||||
#include <TopTools_IndexedDataMapOfShapeListOfShape.hxx>
|
||||
|
||||
|
||||
class BRepOffset_SimpleOffset;
|
||||
|
@@ -4016,7 +4016,7 @@ void BRepOffset_Tool::CorrectOrientation(const TopoDS_Shape& SI,
|
||||
// BRepTopAdaptor_FClass2d FC (TopoDS::Face(FI.Oriented(TopAbs_FORWARD)),
|
||||
// Precision::Confusion());
|
||||
for (itE.Initialize(LOE); itE.More(); itE.Next()) {
|
||||
TopoDS_Shape& OE = itE.Value();
|
||||
TopoDS_Shape& OE = itE.ChangeValue();
|
||||
if (NewEdges.Contains(OE)) {
|
||||
Handle(Geom2d_Curve) CO2d =
|
||||
BRep_Tool::CurveOnSurface(TopoDS::Edge(OE),OF,f,l);
|
||||
|
Reference in New Issue
Block a user