#include <BlockFix.hxx>
#include <BlockFix_UnionFaces.hxx>
#include <BlockFix_UnionEdges.hxx>
-#include <ShapeUpgrade_UnifySameDomain.hxx>
-
-#include <Basics_OCCTVersion.hxx>
#include <ShapeUpgrade_RemoveLocations.hxx>
// with singularities on boundaries by filling
myShape = BlockFix::RefillProblemFaces(myShape);
- //Unification
- // default values
- Standard_Boolean anUFaces = Standard_True;
- if (myOptimumNbFaces == -1)
- anUFaces = Standard_False;
- Standard_Boolean anUEdges = Standard_True;
- Standard_Boolean anConBS = Standard_False;
- Standard_Boolean isAllowInternal = Standard_False;
- Standard_Boolean isSafeInputMode = Standard_True;
- Standard_Real aLinTol = Precision::Confusion();
- Standard_Real aAngTol = Precision::Angular();
- TopTools_MapOfShape aMapOfShapes;
-
- ShapeUpgrade_UnifySameDomain Unifier;
- Unifier.Initialize(myShape, anUEdges, anUFaces, anConBS);
- Unifier.KeepShapes(aMapOfShapes);
- Unifier.SetSafeInputMode(isSafeInputMode);
- Unifier.AllowInternalEdges(isAllowInternal);
- Unifier.SetLinearTolerance(aLinTol);
- Unifier.SetAngularTolerance(aAngTol);
- Unifier.Build();
- TopoDS_Shape aRes = Unifier.Shape();
-
- /*
// faces unification
BlockFix_UnionFaces aFaceUnifier;
aFaceUnifier.GetTolerance() = myTolerance;
myShape = anEdgeUnifier.Perform(aResult,myTolerance);
TopoDS_Shape aRes = BlockFix::FixRanges(myShape,myTolerance);
- */
-
myShape = aRes;
}
sff.SetMaxTolerance(Max(1.,myTolerance*1000.));
//Setting modes
sff.FixOrientationMode() = 0;
-#if OCC_VERSION_LARGE > 0x07020001
+ //#if OCC_VERSION_LARGE > 0x07020001
sff.FixWireTool()->CheckMissingEdgesMode() = Standard_False;
-#endif
+ //#endif
//sff.FixWireMode() = 0;
sff.SetContext(aContext);
// Applying the fixes