X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FHYDROData%2FHYDROData_PolylineOperator.cxx;h=d36f5fa115e2c0147d164ae1fa40be0fc21a3273;hb=58bb6b7459bebeeb089c9ed486c4683a8bae7288;hp=1493f336ec287b960a18b0ab49617c397cd7783a;hpb=ab62e9b1ad153a3de6cc357d4010bae851c87677;p=modules%2Fhydro.git diff --git a/src/HYDROData/HYDROData_PolylineOperator.cxx b/src/HYDROData/HYDROData_PolylineOperator.cxx index 1493f336..d36f5fa1 100644 --- a/src/HYDROData/HYDROData_PolylineOperator.cxx +++ b/src/HYDROData/HYDROData_PolylineOperator.cxx @@ -158,8 +158,20 @@ bool HYDROData_PolylineOperator::Merge( const Handle( HYDROData_Document )& theD } QString aName = theName; if( aName.isEmpty() ) - aName = "merged"; + { + aName = "merged"; + int anIndex = 1; + QString aNewName = aName + "_" + QString::number(anIndex); + while (!theDoc->FindObjectByName(aNewName).IsNull()) // the object with such a name is not found + { + anIndex++; + aNewName = aName + "_" + QString::number(anIndex); + } + aName = aNewName; + } + aNewPolyline->SetName(aName); + aNewPolyline->Update(); return true; } @@ -204,7 +216,7 @@ bool HYDROData_PolylineOperator::split( const Handle( HYDROData_Document )& theD for (int aPSI = 0; aPSI < aPSCount; ++aPSI) { HYDROData_TopoCurve aCurve; - DEBTRACE("Initialize curve " << aPSI); + //DEBTRACE("Initialize curve " << aPSI); if (!aCurve.Initialize(aCurves[aPSI])) { continue; @@ -224,17 +236,16 @@ bool HYDROData_PolylineOperator::split( const Handle( HYDROData_Document )& theD aSplitCurves.end(); for (int iw=0; aCIt != aLastCIt; ++aCIt, iw++) { - std::stringstream brepName; + /*std::stringstream brepName; brepName << "theSplitWire_"; brepName << iw; brepName << ".brep"; - BRepTools::Write(aCIt->Wire() , brepName.str().c_str() ); + BRepTools::Write(aCIt->Wire() , brepName.str().c_str() );*/ aResult.push_back(aCIt->Wire()); } } CreatePolylines( theDoc, thePolyline, aResult, true ); - //CreatePolylinesSplit( theDoc, thePolyline, aResult, true ); return true; } @@ -297,7 +308,7 @@ bool HYDROData_PolylineOperator::CreatePolylines( const Handle( HYDROData_Docume const QColor& theColor = theOldPolyline->GetWireColor(); int n = theShapes.size(); - DEBTRACE("theShapes.size() "<< n); + //DEBTRACE("theShapes.size() "<< n); int anIndex = 1; for( int i=0; iImportShape(theShapes[i], false, theOldPolyline, false); - //aPolyline->SetShape( theShapes[i] ); - if( isUseIndices ) {