mirror of
https://git.dev.opencascade.org/repos/occt.git
synced 2025-08-19 13:40:49 +03:00
0023119: TNaming_Selector::Solve() fails (changes from single face to compound of multiple faces)
Patch for Naming improvement. 1). Added persistence. 2). Removed not supported evolution - Replace. Fix of QADraw commands. Modified test case: caf named_shape F6 1). Redesigned DNaming commands: SelectShape & SolveSelection 2). Added 2 new scripts: F8 & F9 Adding test cases caf/named_shape/F8 F9
This commit is contained in:
@@ -1520,6 +1520,7 @@ static Standard_Boolean FilterByNeighbourgs (const TDF_Label& L,
|
||||
i=1;
|
||||
aNam = "Boundaries";
|
||||
#endif
|
||||
Standard_Boolean isDone = Standard_False;
|
||||
if(SCand.Extent() == 1) { // check if a collection is inside
|
||||
TopTools_MapIteratorOfMapOfShape it(SCand);
|
||||
const TopoDS_Shape& aS = it.Key();
|
||||
@@ -1593,12 +1594,13 @@ static Standard_Boolean FilterByNeighbourgs (const TDF_Label& L,
|
||||
} //2
|
||||
if (Keep) {
|
||||
B.Select (S,S);
|
||||
isDone = Standard_True;
|
||||
#ifdef MDTV_DEB_FNB
|
||||
DbgTools_Write(S, "FilterByNbs_Sel.brep") ;
|
||||
#endif
|
||||
}
|
||||
} //1
|
||||
return Standard_True;
|
||||
return isDone;
|
||||
}
|
||||
|
||||
//=======================================================================
|
||||
|
@@ -703,6 +703,7 @@ static Standard_Boolean Filter (const TDF_Label& F,
|
||||
//DbgTools::DisplayShape(S, F, Quantity_NOC_BLUE1);
|
||||
Write(Context, "FNBS_Context.brep");
|
||||
Write(S, "FNBS_S.brep");
|
||||
Write(Neighbourg, "NBS");
|
||||
#endif
|
||||
#ifdef OCC273
|
||||
// mpv : NS and shape must be the same
|
||||
@@ -841,6 +842,8 @@ static Standard_Boolean Filter (const TDF_Label& F,
|
||||
#ifdef MDTV_DEB_NBS
|
||||
cout << "FilterByNBS: ";
|
||||
Print_Entry(NF->Label());
|
||||
cout <<"AppendNS = " ;
|
||||
Print_Entry(NS->Label());
|
||||
#endif
|
||||
//---------------------
|
||||
// Naming des voisins.
|
||||
@@ -856,8 +859,14 @@ static Standard_Boolean Filter (const TDF_Label& F,
|
||||
const TopoDS_Shape& aS2 = aNS->Get();
|
||||
if(!aS.IsNull())
|
||||
cout << "Shape arg type = " << aS.ShapeType() <<" TSH = " << aS.TShape()->This()<<endl;
|
||||
if(!aS2.IsNull())
|
||||
if(!aS2.IsNull()) {
|
||||
cout << "Build shape type = " << aS2.ShapeType() <<" TSH = " << aS2.TShape()->This()<<endl;
|
||||
Write (aS2, "NBS_BuildShape.brep");
|
||||
}
|
||||
if(aNS.IsNull()) {
|
||||
cout <<"AppendNS = " ;
|
||||
Print_Entry(aNS->Label());
|
||||
}
|
||||
#endif
|
||||
|
||||
const TopoDS_Shape aSNS = aNS->Get(); //allow child level
|
||||
|
Reference in New Issue
Block a user