// intersection of the same SD vertex with edge
NCollection_DataMap<BOPDS_Pair, TColStd_ListOfInteger, BOPDS_PairMapHasher> aDMVSD;
//
- Message_ProgressScope aPSOuter(theRange, NULL, 1);
+ Message_ProgressScope aPSOuter(theRange, "Intersecting vertices with edges", 1);
for (i = 1; i <= aNbVE; ++i) {
if (UserBreak(aPSOuter))
{
//
aNbVE = aVVE.Length();
- Message_ProgressScope aPS(aPSOuter.Next(), "Intersect vertex-edge", aNbVE);
+ Message_ProgressScope aPS(aPSOuter.Next(), "Intersecting vertices with edges", aNbVE);
for (i = 0; i < aVVE.Length(); i++)
{
BOPAlgo_VertexEdge& aVESolver = aVVE.ChangeValue(i);
BOPDS_VectorOfInterfEF& aEFs = myDS->InterfEF();
//
// 4. Compute Extra Paves and split Pave blocks by the Extra paves
- Message_ProgressScope aPS(theRange, NULL, 1);
+ Message_ProgressScope aPS(theRange, NULL, 2);
Standard_Integer i, aNb = aImages.Extent();
- for (i = 1; i <= aNb; ++i) {
+ Message_ProgressScope aPS1(aPS.Next(), "Performing new vertices", aNb + aNbV);
+ for (i = 1; i <= aNb; ++i, aPS1.Next()) {
if (UserBreak(aPS))
{
return;
//
// 3. Map PaveBlock/ListOfVertices to add to this PaveBlock ->aMPBLI
BOPDS_IndexedDataMapOfPaveBlockListOfInteger aMPBLI(100, theAllocator);
- for (i = 1; i <= aNbV; ++i) {
+ for (i = 1; i <= aNbV; ++i, aPS1.Next()) {
if (UserBreak(aPS))
{
return;
FillShrunkData(TopAbs_EDGE, TopAbs_FACE);
//
myIterator->Initialize(TopAbs_EDGE, TopAbs_FACE);
- Message_ProgressScope aPSOuter(theRange, NULL, 100);
+ Message_ProgressScope aPSOuter(theRange, "Intersecting edges with faces", 100);
Standard_Integer iSize = myIterator->ExpectedLength();
if (!iSize) {
return;
aPBMap.Clear();
anAlloc->Reset();
- Message_ProgressScope aPS(aPSOuter.Next(), "Force intersection edge-face", aNbEFs);
+ Message_ProgressScope aPS(aPSOuter.Next(), "Checking for coinciding edges and faces", aNbEFs);
for (Standard_Integer i = 0; i < aNbEFs; i++)
{
BOPAlgo_EdgeFace& aEdgeFace = aVEdgeFace.ChangeValue(i);
}//for (; myIterator->More(); myIterator->Next()) {
//
Standard_Integer k, aNbFaceFace = aVFaceFace.Length();;
- Message_ProgressScope aPS(aPSOuter.Next(), "Face-face perform", aNbFaceFace);
+ Message_ProgressScope aPS(aPSOuter.Next(), "Intersecting faces", aNbFaceFace);
for (k = 0; k < aVFaceFace.Size(); k++)
{
BOPAlgo_FaceFace& aFaceFace = aVFaceFace.ChangeValue(k);
//=======================================================================
void BOPAlgo_PaveFiller::MakeBlocks(const Message_ProgressRange& theRange)
{
- Message_ProgressScope aPS(theRange, NULL, 1);
+ Message_ProgressScope aPSOuter(theRange, NULL, 2);
if (myGlue != BOPAlgo_GlueOff) {
return;
}
//
BOPDS_VectorOfInterfFF& aFFs=myDS->InterfFF();
Standard_Integer aNbFF = aFFs.Length();
+ Message_ProgressScope aPS(aPSOuter.Next(), "Making blocks", aNbFF);
if (!aNbFF) {
return;
}
// Map of PaveBlocks with the faces to which it has to be added
BOPAlgo_DataMapOfPaveBlockListOfInteger aPBFacesMap;
//
- for (i=0; i<aNbFF; ++i) {
+ for (i=0; i<aNbFF; ++i, aPS.Next()) {
if (UserBreak(aPS))
{
return;
//
// 1. Treat Points
for (j=0; j<aNbP; ++j) {
- if (UserBreak(aPS))
- {
- return;
- }
TopoDS_Vertex aV;
BOPDS_CoupleOfPaveBlocks aCPB;
//
GetStickVertices(nF1, nF2, aMVStick, aMVEF, aMI);
//
for (j = 0; j < aNbC; ++j) {
- if (UserBreak(aPS))
- {
- return;
- }
BOPDS_Curve& aNC = aVC.ChangeValue(j);
// DEBt
aNC.InitPaveBlock1();
FilterPavesOnCurves(aVC, aMVTol);
for (j = 0; j<aNbC; ++j) {
- if (UserBreak(aPS))
- {
- return;
- }
BOPDS_Curve& aNC=aVC.ChangeValue(j);
const IntTools_Curve& aIC=aNC.Curve();
//
//
// 3. Make section edges
for (j=0; j<aNbC; ++j) {
- if (UserBreak(aPS))
- {
- return;
- }
BOPDS_Curve& aNC=aVC.ChangeValue(j);
const IntTools_Curve& aIC=aNC.Curve();
Standard_Real aTolR3D = Max(aNC.Tolerance(), aNC.TangentialTolerance());
//
aItLPB.Initialize(aLPB);
for (; aItLPB.More(); aItLPB.Next()) {
- if (UserBreak(aPS))
- {
- return;
- }
Handle(BOPDS_PaveBlock)& aPB=aItLPB.ChangeValue();
aPB->Indices(nV1, nV2);
aPB->Range (aT1, aT2);
//and forget about SD groups of such vertices
aItMV.Initialize(aMVTol);
for (; aItMV.More(); aItMV.Next()) {
- if (UserBreak(aPS))
- {
- return;
- }
nV1 = aItMV.Key();
Standard_Real aTol = aItMV.Value();
//
// Treat possible common zones by trying to put each section edge
// into all faces, not participated in creation of that edge, as IN edge
- PutSEInOtherFaces(aPS.Next());
+ PutSEInOtherFaces(aPSOuter.Next());
//
//-----------------------------------------------------scope t
aMVStick.Clear();
BOPDS_VectorOfInterfFF& aFFs=myDS->InterfFF();
aNbFF=aFFs.Length();
for (i=0; i<aNbFF; ++i) {
- if (UserBreak(aPSOuter))
- {
- return;
- }
const BOPDS_InterfFF& aFF=aFFs(i);
const BOPDS_VectorOfCurve& aVNC = aFF.Curves();
aNbC = aVNC.Length();
}// for (i=0; i<aNbFF; ++i) {
}//if (bPCurveOnS1 || bPCurveOnS2 ) {
//
- Message_ProgressScope aPS(aPSOuter.Next(), "MakePCurves", aVMPC.Length());
+ Message_ProgressScope aPS(aPSOuter.Next(), "Projecting edges on faces", aVMPC.Length());
for (i = 0; i < aVMPC.Length(); i++)
{
BOPAlgo_MPC& aMPC = aVMPC.ChangeValue(i);
}
}
//
- Message_ProgressScope aPS(aPSOuter.Next(), "Prepare", aVBPC.Length());
+ Message_ProgressScope aPS(aPSOuter.Next(), "Building 2d curves on planar faces", aVBPC.Length());
for (i = 0; i < aVBPC.Length(); i++)
{
BOPAlgo_BPC& aBPC = aVBPC.ChangeValue(i);