-// Copyright (C) 2007-2016 CEA/DEN, EDF R&D, OPEN CASCADE
+// Copyright (C) 2007-2019 CEA/DEN, EDF R&D, OPEN CASCADE
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Lesser General Public
//=================================================================================
bool SMESHGUI_OffsetDlg::ClickOnApply()
{
- if (mySMESHGUI->isActiveStudyLocked())
+ if (mySMESHGUI->isStudyLocked())
return false;
if( !isValid() )
QStringList aParameters;
aParameters << SpinBox->text();
- int actionButton = ActionGroup->checkedId();
- bool makeGroups = ( MakeGroupsCheck->isEnabled() && MakeGroupsCheck->isChecked() );
+ int actionButton = ActionGroup->checkedId();
+ bool copyElements = ( actionButton == COPY_ELEMS_BUTTON );
+ bool makeGroups = ( MakeGroupsCheck->isEnabled() && MakeGroupsCheck->isChecked() );
SMESH::ListOfGroups_var groups;
SMESH::SMESH_Mesh_var mesh;
QStringList anEntryList;
switch ( actionButton ) {
case MOVE_ELEMS_BUTTON:
+ makeGroups = true;
if ( CheckBoxMesh->isChecked() )
for ( int i = 0; i < myObjects.count(); i++ ) {
SMESH::SMESH_MeshEditor_var aMeshEditor = myMeshes[i]->GetMeshEditor();
myMeshes[i]->SetParameters( aParameters.join( ":" ).toLatin1().constData() );
- mesh = aMeshEditor->Offset( myObjects[i], offsetValue, true, "", groups.out() );
+ mesh = aMeshEditor->Offset( myObjects[i], offsetValue, makeGroups,
+ copyElements, "", groups.out() );
}
else {
SMESH::SMESH_MeshEditor_var aMeshEditor = myMeshes[0]->GetMeshEditor();
SMESH::IDSource_wrap src = aMeshEditor->MakeIDSource(anElementsId, SMESH::FACE);
myMeshes[0]->SetParameters( aParameters.join( ":" ).toLatin1().constData() );
- mesh = aMeshEditor->Offset( src, offsetValue, true, "", groups.out() );
+ mesh = aMeshEditor->Offset( src, offsetValue, makeGroups,
+ copyElements, "", groups.out() );
}
break;
for ( int i = 0; i < myObjects.count(); i++ ) {
SMESH::SMESH_MeshEditor_var aMeshEditor = myMeshes[i]->GetMeshEditor();
myMeshes[i]->SetParameters(aParameters.join( ":" ).toLatin1().constData());
- mesh = aMeshEditor->Offset( myObjects[i], offsetValue, makeGroups, "", groups.out() );
+ mesh = aMeshEditor->Offset( myObjects[i], offsetValue, makeGroups,
+ copyElements, "", groups.out() );
}
else {
SMESH::SMESH_MeshEditor_var aMeshEditor = myMeshes[0]->GetMeshEditor();
SMESH::IDSource_wrap src = aMeshEditor->MakeIDSource(anElementsId, SMESH::FACE );
myMeshes[0]->SetParameters(aParameters.join( ":" ).toLatin1().constData());
- mesh = aMeshEditor->Offset( src, offsetValue, makeGroups, "", groups.out() );
+ mesh = aMeshEditor->Offset( src, offsetValue, makeGroups,
+ copyElements, "", groups.out() );
}
break;
SMESH::UniqueMeshName( LineEditNewMesh->text().replace( "*", myObjectsNames[i] ));
SMESH::SMESH_MeshEditor_var aMeshEditor = myMeshes[i]->GetMeshEditor();
myMeshes[i]->SetParameters(aParameters.join( ":" ).toLatin1().constData());
- mesh = aMeshEditor->Offset( myObjects[i], offsetValue, makeGroups,
+ mesh = aMeshEditor->Offset( myObjects[i], offsetValue, makeGroups, copyElements,
aName.toLatin1().data(), groups.out() );
if( _PTR(SObject) aSObject = SMESH::ObjectToSObject( mesh ))
anEntryList.append( aSObject->GetID().c_str() );
SMESH::SMESH_MeshEditor_var aMeshEditor = myMeshes[0]->GetMeshEditor();
myMeshes[0]->SetParameters(aParameters.join( ":" ).toLatin1().constData());
SMESH::IDSource_wrap src = aMeshEditor->MakeIDSource(anElementsId, SMESH::FACE );
- mesh = aMeshEditor->Offset( src, offsetValue, makeGroups,
+ mesh = aMeshEditor->Offset( src, offsetValue, makeGroups, copyElements,
LineEditNewMesh->text().toLatin1().data(), groups.out() );
if( _PTR(SObject) aSObject = SMESH::ObjectToSObject( mesh ) )
anEntryList.append( aSObject->GetID().c_str() );
for ( int i = 0; i < myObjects.count(); i++ )
{
SMESH::SMESH_MeshEditor_var aMeshEditor = myMeshes[i]->GetMeshEditPreviewer();
- mesh = aMeshEditor->Offset( myObjects[i], offsetValue, false, "", groups.out() );
+ mesh = aMeshEditor->Offset( myObjects[i], offsetValue, false, false, "", groups.out() );
aMeshPreviewStruct << aMeshEditor->GetPreviewData();
}
else
SMESH::SMESH_MeshEditor_var aMeshEditor = myMeshes[0]->GetMeshEditPreviewer();
SMESH::IDSource_wrap src = aMeshEditor->MakeIDSource(anElementsId, SMESH::FACE);
- mesh = aMeshEditor->Offset( src, offsetValue, false, "", groups.out() );
+ mesh = aMeshEditor->Offset( src, offsetValue, false, false, "", groups.out() );
aMeshPreviewStruct << aMeshEditor->GetPreviewData();
}
setSimulationPreview(aMeshPreviewStruct);