// 5.2. Add unused holes to the original face
if (aNbHoles != aNbInOutMap) {
Bnd_Box aBoxF;
- BRepBndLib::Add(myFace, aBoxF);
+ BRepBndLib::AddOptimal(myFace, aBoxF, Standard_True, Standard_True);
if (aBoxF.IsOpenXmin() || aBoxF.IsOpenXmax() ||
aBoxF.IsOpenYmin() || aBoxF.IsOpenYmax() ||
aBoxF.IsOpenZmin() || aBoxF.IsOpenZmax()) {
const TopoDS_Shape& aShell = aItLS.Value();
aSB.SetShape(aShell);
//
- BRepBndLib::Add(aShell, aBox);
+ BRepBndLib::AddOptimal(aShell, aBox, Standard_True, Standard_True);
bIsHole=Standard_False;
//
bIsGrowth=IsGrowthShell(aShell, aMHF);
const BOPAlgo_FacePnt& aFP=aVFP(k);
const TopoDS_Face& aF=aFP.Face();
//
- BRepBndLib::Add(aF, aBox);
+ BRepBndLib::AddOptimal(aF, aBox, Standard_True, Standard_True);
aTreeFiller.Add(k, aBox);
}
//
continue;
}
Bnd_Box aBox;
- BRepBndLib::Add(aSx, aBox);
+ BRepBndLib::AddOptimal(aSx, aBox, Standard_True, Standard_True);
aBox.SetGap(aBox.GetGap() + Precision::Confusion());
//
BOPAlgo_ShapeBox& aSB=aVSB.Append1();
const TopoDS_Edge& aE = *(TopoDS_Edge*)&myDS->Shape(nE);
aBB.UpdateEdge(aE, aTol);
Bnd_Box& aBoxE=aSIE.ChangeBox();
- BRepBndLib::Add(aE, aBoxE);
+ BRepBndLib::AddOptimal(aE, aBoxE, Standard_True, Standard_True);
aBoxE.SetGap(aBoxE.GetGap() + Precision::Confusion());
//
aIt.Initialize(aLI);
aBB.UpdateVertex(aV, aTol);
BOPDS_ShapeInfo& aSIV = myDS->ChangeShapeInfo(nV);
Bnd_Box& aBoxV = aSIV.ChangeBox();
- BRepBndLib::Add(aV, aBoxV);
+ BRepBndLib::AddOptimal(aV, aBoxV, Standard_True, Standard_True);
aBoxV.SetGap(aBoxV.GetGap() + Precision::Confusion());
}
}
aBB.UpdateVertex(aVSD, aTolNew);
BOPDS_ShapeInfo& aSIV = myDS->ChangeShapeInfo(nVNew);
Bnd_Box& aBoxV = aSIV.ChangeBox();
- BRepBndLib::Add(aVSD, aBoxV);
+ BRepBndLib::AddOptimal(aVSD, aBoxV, Standard_True, Standard_True);
aBoxV.SetGap(aBoxV.GetGap() + Precision::Confusion());
}
return nVNew;
// bounding box for the new vertex
BOPDS_ShapeInfo& aSIDS = myDS->ChangeShapeInfo(nVNew);
Bnd_Box& aBoxDS = aSIDS.ChangeBox();
- BRepBndLib::Add(aVNew, aBoxDS);
+ BRepBndLib::AddOptimal(aVNew, aBoxDS, Standard_True, Standard_True);
aBoxDS.SetGap(aBoxDS.GetGap() + Precision::Confusion());
//
// add vertex to SD map
BOPDS_ShapeInfo& aSIDS=myDS->ChangeShapeInfo(nV1);
Bnd_Box& aBoxDS=aSIDS.ChangeBox();
aBoxDS = Bnd_Box();
- BRepBndLib::Add(aV, aBoxDS);
+ BRepBndLib::AddOptimal(aV, aBoxDS, Standard_True, Standard_True);
aBoxDS.SetGap(aBoxDS.GetGap() + Precision::Confusion());
//
if (aDMVLV.IsBound(nV1))
//
BOPDS_ShapeInfo& aSIDS=myDS->ChangeShapeInfo(nVn);
Bnd_Box& aBoxDS=aSIDS.ChangeBox();
- BRepBndLib::Add(aVn, aBoxDS);
+ BRepBndLib::AddOptimal(aVn, aBoxDS, Standard_True, Standard_True);
aBoxDS.SetGap(aBoxDS.GetGap() + Precision::Confusion());
//
aLVB.Append(nVn);
//
BOPDS_ShapeInfo& aSIDS=myDS->ChangeShapeInfo(nV);
Bnd_Box& aBoxDS=aSIDS.ChangeBox();
- BRepBndLib::Add(aV, aBoxDS);
+ BRepBndLib::AddOptimal(aV, aBoxDS, Standard_True, Standard_True);
aBoxDS.SetGap(aBoxDS.GetGap() + Precision::Confusion());
}
}
myV1, myT1,
myV2, myT2,
myESp);
- BRepBndLib::Add(myESp, myBox);
+ BRepBndLib::AddOptimal(myESp, myBox, Standard_True, Standard_True);
myBox.SetGap(myBox.GetGap() + Precision::Confusion());
}
//
aSI.SetShape(aSp);
//
Bnd_Box& aBox=aSI.ChangeBox();
- BRepBndLib::Add(aSp, aBox);
+ BRepBndLib::AddOptimal(aSp, aBox, Standard_True, Standard_True);
aBox.SetGap(aBox.GetGap() + Precision::Confusion());
//
nSp=myDS->Append(aSI);
}
//
Bnd_Box& aBox=aSI.ChangeBox();
- BRepBndLib::Add(aE, aBox);
+ BRepBndLib::AddOptimal(aE, aBox, Standard_True, Standard_True);
//
const BOPCol_ListOfInteger& aLV=aSI.SubShapes();
aIt1.Initialize(aLV);
const TopoDS_Shape& aS=aSI.Shape();
//
Bnd_Box& aBox=aSI.ChangeBox();
- BRepBndLib::Add(aS, aBox);
+ BRepBndLib::AddOptimal(aS, aBox, Standard_True, Standard_True);
//
BOPCol_ListOfInteger& aLW=aSI.ChangeSubShapes();
aIt1.Initialize(aLW);
aBB.UpdateEdge(aE, aTol);
BOPDS_ShapeInfo& aSIE=ChangeShapeInfo(nE);
Bnd_Box& aBoxE=aSIE.ChangeBox();
- BRepBndLib::Add(aE, aBoxE);
+ BRepBndLib::AddOptimal(aE, aBoxE, Standard_True, Standard_True);
aBoxE.SetGap(aBoxE.GetGap() + aTolAdd);
//
const BOPCol_ListOfInteger& aLI = aSIE.SubShapes();
new (pBox) Bnd_Box();
//
Bnd_Box &aBox=*pBox;
- BRepBndLib::Add(aS, aBox);
+ BRepBndLib::AddOptimal(aS, aBox, Standard_True, Standard_True);
//
anAdr=(Standard_Address)pBox;
myBndBoxDataMap.Bind(aS, anAdr);