X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FSMESHGUI%2FSMESHGUI_MultiEditDlg.cxx;h=503de82d7bb741cfb0f69c037a8d6be5d5cef31b;hb=ffd41e46b25f119a3110c7d28ae938986069c7a5;hp=a252ce333238a2c3080adcea34843c64534c507b;hpb=f500e5a8b62895e81275f73d8fecd7a977711d78;p=modules%2Fsmesh.git diff --git a/src/SMESHGUI/SMESHGUI_MultiEditDlg.cxx b/src/SMESHGUI/SMESHGUI_MultiEditDlg.cxx index a252ce333..503de82d7 100755 --- a/src/SMESHGUI/SMESHGUI_MultiEditDlg.cxx +++ b/src/SMESHGUI/SMESHGUI_MultiEditDlg.cxx @@ -1,4 +1,4 @@ -// Copyright (C) 2007-2013 CEA/DEN, EDF R&D, OPEN CASCADE +// Copyright (C) 2007-2014 CEA/DEN, EDF R&D, OPEN CASCADE // // Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS @@ -6,7 +6,7 @@ // This library is free software; you can redistribute it and/or // modify it under the terms of the GNU Lesser General Public // License as published by the Free Software Foundation; either -// version 2.1 of the License. +// version 2.1 of the License, or (at your option) any later version. // // This library is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -1635,16 +1635,18 @@ bool SMESHGUI_SplitVolumesDlg::process (SMESH::SMESH_MeshEditor_ptr theEditor, aParameters << myDirSpin[2]->text(); myMesh->SetParameters( aParameters.join(":").toLatin1().constData() ); - SMESH::AxisStruct_var axis = new SMESH::AxisStruct; - axis->x = myPointSpin[0]->GetValue(); - axis->y = myPointSpin[1]->GetValue(); - axis->z = myPointSpin[2]->GetValue(); - axis->vx = myDirSpin[0]->GetValue(); - axis->vy = myDirSpin[1]->GetValue(); - axis->vz = myDirSpin[2]->GetValue(); - - theEditor->SplitHexahedraIntoPrisms( obj, myGroupChoice->checkedId()+1, - axis, myAllDomainsChk->isChecked() ); + SMESH::PointStruct_var point = new SMESH::PointStruct; + point->x = myPointSpin[0]->GetValue(); + point->y = myPointSpin[1]->GetValue(); + point->z = myPointSpin[2]->GetValue(); + SMESH::DirStruct_var norm = new SMESH::DirStruct; + norm->PS.x = myDirSpin[0]->GetValue(); + norm->PS.y = myDirSpin[1]->GetValue(); + norm->PS.z = myDirSpin[2]->GetValue(); + + theEditor->SplitHexahedraIntoPrisms( obj, point, norm, + myGroupChoice->checkedId()+1, + myAllDomainsChk->isChecked() ); } else { @@ -1698,6 +1700,10 @@ void SMESHGUI_SplitVolumesDlg::on3d2dChanged(int isPrism) } SMESHGUI_MultiEditDlg::on3d2dChanged( !myEntityType ); myEntityType = 1; // == VOLUME + myChoiceWidget->hide(); + myChoiceWidget->show(); + resize(minimumSizeHint()); + onSelectionDone(); } //================================================================================ @@ -1788,6 +1794,8 @@ void SMESHGUI_SplitVolumesDlg::onSelectionDone() } updateButtons(); } + + myCriterionGrp->setEnabled( !myMesh->_is_nil() && nbElemsInMesh() > 0 ); } //================================================================================