From 744c914fb53e3676e3ec45080046ef1274f43522 Mon Sep 17 00:00:00 2001 From: rnc Date: Wed, 11 Sep 2013 15:01:13 +0000 Subject: [PATCH] IMP: EDF 2680: New options for log files The user can now choose to print the log in a file or in the standard output The user can choose to keep only log files, keep all working files or keep log files when computation fails only --- .../images/ghs3d_enforced_meshes.png | Bin 32900 -> 25750 bytes .../images/ghs3d_enforced_vertices.png | Bin 36351 -> 27824 bytes .../images/ghs3d_parameters_advanced.png | Bin 40859 -> 40123 bytes .../images/ghs3d_parameters_basic.png | Bin 20318 -> 20401 bytes .../gui/GHS3DPLUGIN/input/ghs3d_hypo.doc | 34 ++- idl/GHS3DPlugin_Algorithm.idl | 10 + src/GHS3DPlugin/GHS3DPluginBuilder.py | 18 +- src/GHS3DPlugin/GHS3DPlugin_GHS3D.cxx | 18 +- src/GHS3DPlugin/GHS3DPlugin_GHS3D.hxx | 1 + src/GHS3DPlugin/GHS3DPlugin_Hypothesis.cxx | 62 +++++ src/GHS3DPlugin/GHS3DPlugin_Hypothesis.hxx | 14 ++ src/GHS3DPlugin/GHS3DPlugin_Hypothesis_i.cxx | 42 ++++ src/GHS3DPlugin/GHS3DPlugin_Hypothesis_i.hxx | 14 +- src/GUI/GHS3DPluginGUI_AdvWidget.cxx | 45 ++++ src/GUI/GHS3DPluginGUI_AdvWidget_QTD.ui | 225 ++++++++++++++++++ src/GUI/GHS3DPluginGUI_Dlg.h | 43 ++++ src/GUI/GHS3DPluginGUI_HypothesisCreator.cxx | 206 ++++++++-------- src/GUI/GHS3DPluginGUI_HypothesisCreator.h | 20 +- src/GUI/GHS3DPlugin_msg_en.ts | 36 ++- src/GUI/GHS3DPlugin_msg_fr.ts | 24 +- src/GUI/Makefile.am | 12 +- 21 files changed, 670 insertions(+), 154 deletions(-) create mode 100644 src/GUI/GHS3DPluginGUI_AdvWidget.cxx create mode 100644 src/GUI/GHS3DPluginGUI_AdvWidget_QTD.ui create mode 100644 src/GUI/GHS3DPluginGUI_Dlg.h diff --git a/doc/salome/gui/GHS3DPLUGIN/images/ghs3d_enforced_meshes.png b/doc/salome/gui/GHS3DPLUGIN/images/ghs3d_enforced_meshes.png index 72ed7779bee08389e41d4272a1bdc6651d21e858..c41c62ea467e7da81985bedfe3095811959d8f89 100644 GIT binary patch literal 25750 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 literal 32900 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 diff --git a/doc/salome/gui/GHS3DPLUGIN/images/ghs3d_enforced_vertices.png b/doc/salome/gui/GHS3DPLUGIN/images/ghs3d_enforced_vertices.png index e86a73ed131a806fbf9ba39e2cb12213bac85110..75126ee72d069b571bb0ee3869860c338b9439f5 100644 GIT binary patch literal 27824 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 GAN(J^6uh4R literal 36351 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 diff --git a/doc/salome/gui/GHS3DPLUGIN/images/ghs3d_parameters_advanced.png b/doc/salome/gui/GHS3DPLUGIN/images/ghs3d_parameters_advanced.png index e99409e914a274836798494e7f542535ba65c4fb..6ad5f894a3f7a2ddda4186bb47ea8741bf12a355 100644 GIT binary patch literal 40123 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 literal 40859 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

SMESHGUI_SpinBox.h
+ + + + + diff --git a/src/GUI/GHS3DPluginGUI_Dlg.h b/src/GUI/GHS3DPluginGUI_Dlg.h new file mode 100644 index 0000000..f7bfd1c --- /dev/null +++ b/src/GUI/GHS3DPluginGUI_Dlg.h @@ -0,0 +1,43 @@ +// Copyright (C) 2007-2013 CEA/DEN, EDF R&D +// +// 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. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// + +// File : GHS3DPluginGUI_Dlg.h +// Author : Renaud NEDELEC (OpenCascade) + +#ifndef GHS3DPLUGINGUI_H +#define GHS3DPLUGINGUI_H + +////////////////////////////////////////// +// GHS3DPluginGUI_AdvWidget +////////////////////////////////////////// + +#include "ui_GHS3DPluginGUI_AdvWidget_QTD.h" +#include "GHS3DPluginGUI_HypothesisCreator.h" + +class GHS3DPLUGINGUI_EXPORT GHS3DPluginGUI_AdvWidget : public QWidget, + public Ui::GHS3DPluginGUI_AdvWidget_QTD +{ + Q_OBJECT + +public: + GHS3DPluginGUI_AdvWidget( QWidget* = 0, Qt::WindowFlags = 0 ); + ~GHS3DPluginGUI_AdvWidget(); +}; + +#endif \ No newline at end of file diff --git a/src/GUI/GHS3DPluginGUI_HypothesisCreator.cxx b/src/GUI/GHS3DPluginGUI_HypothesisCreator.cxx index 25d7101..5f97baf 100644 --- a/src/GUI/GHS3DPluginGUI_HypothesisCreator.cxx +++ b/src/GUI/GHS3DPluginGUI_HypothesisCreator.cxx @@ -24,6 +24,7 @@ // #include "GHS3DPluginGUI_HypothesisCreator.h" #include "GHS3DPluginGUI_Enums.h" +#include "GHS3DPluginGUI_Dlg.h" #include @@ -409,71 +410,41 @@ QFrame* GHS3DPluginGUI_HypothesisCreator::buildFrame() QGridLayout* anAdvLayout = new QGridLayout( myAdvGroup ); anAdvLayout->setSpacing( 6 ); anAdvLayout->setMargin( 11 ); - - myMaximumMemoryCheck = new QCheckBox( tr( "MAX_MEMORY_SIZE" ), myAdvGroup ); - myMaximumMemorySpin = new QSpinBox( myAdvGroup ); - myMaximumMemorySpin->setMinimum( 1 ); - myMaximumMemorySpin->setMaximum( maxAvailableMemory() ); - myMaximumMemorySpin->setSingleStep( 10 ); - QLabel* aMegabyteLabel = new QLabel( tr( "MEGABYTE" ), myAdvGroup ); - - myInitialMemoryCheck = new QCheckBox( tr( "INIT_MEMORY_SIZE" ), myAdvGroup ); - myInitialMemorySpin = new QSpinBox( myAdvGroup ); - myInitialMemorySpin->setMinimum( 1 ); - myInitialMemorySpin->setMaximum( maxAvailableMemory() ); - myInitialMemorySpin->setSingleStep( 10 ); - QLabel* aMegabyteLabel2 = new QLabel( tr( "MEGABYTE" ), myAdvGroup ); - - QLabel* aWorkinDirLabel = new QLabel( tr( "WORKING_DIR" ), myAdvGroup ); - myWorkingDir = new QLineEdit( myAdvGroup ); - //myWorkingDir->setReadOnly( true ); - QPushButton* dirBtn = new QPushButton( tr( "SELECT_DIR" ), myAdvGroup ); - dirBtn->setSizePolicy( QSizePolicy( QSizePolicy::Fixed, QSizePolicy::Fixed ) ); - - myKeepFiles = new QCheckBox( tr( "KEEP_WORKING_FILES" ), myAdvGroup ); + myAdvWidget = new GHS3DPluginGUI_AdvWidget(myAdvGroup); + anAdvLayout->addWidget( myAdvWidget); - QLabel* aVerboseLevelLabel = new QLabel( tr( "VERBOSE_LEVEL" ), myAdvGroup ); - myVerboseLevelSpin = new QSpinBox( myAdvGroup ); - myVerboseLevelSpin->setMinimum( 0 ); - myVerboseLevelSpin->setMaximum( 10 ); - myVerboseLevelSpin->setSingleStep( 1 ); + myAdvWidget->maxMemoryCheck->setText(tr( "MAX_MEMORY_SIZE" )); + myAdvWidget->initialMemoryCheck->setText(tr( "INIT_MEMORY_SIZE" )); - myToCreateNewNodesCheck = new QCheckBox( tr( "TO_ADD_NODES" ), myAdvGroup ); + myAdvWidget->maxMemorySpin ->setMinimum( 1 ); + myAdvWidget->maxMemorySpin ->setMaximum( maxAvailableMemory() ); + myAdvWidget->maxMemorySpin ->setSingleStep( 10 ); - myRemoveInitialCentralPointCheck = new QCheckBox( tr( "NO_INITIAL_CENTRAL_POINT" ), myAdvGroup ); + myAdvWidget->initialMemorySpin->setMinimum( 1 ); + myAdvWidget->initialMemorySpin->setMaximum( maxAvailableMemory() ); + myAdvWidget->initialMemorySpin->setSingleStep( 10 ); + + myAdvWidget->initialMemoryLabel ->setText (tr( "MEGABYTE" )); + myAdvWidget->maxMemoryLabel ->setText (tr( "MEGABYTE" )); - myBoundaryRecoveryCheck = new QCheckBox( tr( "RECOVERY_VERSION" ), myAdvGroup ); + myAdvWidget->workingDirectoryLabel ->setText (tr( "WORKING_DIR" )); + myAdvWidget->workingDirectoryPushButton ->setText (tr( "SELECT_DIR" )); + myAdvWidget->keepWorkingFilesCheck ->setText (tr( "KEEP_WORKING_FILES" )); + myAdvWidget->verboseLevelLabel ->setText (tr( "VERBOSE_LEVEL" )); + myAdvWidget->removeLogOnSuccessCheck ->setText (tr( "REMOVE_LOG_ON_SUCCESS" )); + myAdvWidget->logInFileCheck ->setText (tr( "LOG_IN_FILE" )); - myFEMCorrectionCheck = new QCheckBox( tr( "FEM_CORRECTION" ), myAdvGroup ); + myAdvWidget->memoryGroupBox ->setTitle(tr( "MEMORY_GROUP_TITLE" )); + myAdvWidget->logGroupBox ->setTitle(tr( "LOG_GROUP_TITLE" )); + myAdvWidget->advancedMeshingGroupBox ->setTitle(tr( "ADVANCED_MESHING_GROUP_TITLE" )); - QLabel* myGradationLabel = new QLabel( tr( "GHS3D_GRADATION" ), myAdvGroup ); - myGradation = new SMESHGUI_SpinBox(myAdvGroup); - myGradation->RangeStepAndValidator(1.05, 5.0, 0.05, "length_precision"); - - QLabel* aTextOptionLabel = new QLabel( tr( "TEXT_OPTION" ), myAdvGroup ); - myTextOption = new QLineEdit( myAdvGroup ); - - row = 0; - anAdvLayout->addWidget( myMaximumMemoryCheck, row, 0, 1, 1 ); - anAdvLayout->addWidget( myMaximumMemorySpin, row, 1, 1, 1 ); - anAdvLayout->addWidget( aMegabyteLabel, row++, 2, 1, 1 ); - anAdvLayout->addWidget( myInitialMemoryCheck, row, 0, 1, 1 ); - anAdvLayout->addWidget( myInitialMemorySpin, row, 1, 1, 1 ); - anAdvLayout->addWidget( aMegabyteLabel2, row++, 2, 1, 1 ); - anAdvLayout->addWidget( aWorkinDirLabel, row, 0, 1, 1 ); - anAdvLayout->addWidget( myWorkingDir, row, 1, 1, 2 ); - anAdvLayout->addWidget( dirBtn, row++, 3, 1, 1 ); - anAdvLayout->addWidget( myKeepFiles, row++, 0, 1, 4 ); - anAdvLayout->addWidget( aVerboseLevelLabel, row, 0, 1, 1 ); - anAdvLayout->addWidget( myVerboseLevelSpin, row++, 1, 1, 2 ); - anAdvLayout->addWidget( myToCreateNewNodesCheck, row++, 0, 1, 4 ); - anAdvLayout->addWidget( myRemoveInitialCentralPointCheck, row++, 0, 1, 4 ); - anAdvLayout->addWidget( myBoundaryRecoveryCheck, row++, 0, 1, 4 ); - anAdvLayout->addWidget( myFEMCorrectionCheck, row++, 0, 1, 4 ); - anAdvLayout->addWidget( myGradationLabel, row, 0, 1, 1 ); - anAdvLayout->addWidget( myGradation, row++, 1, 1, 2 ); - anAdvLayout->addWidget( aTextOptionLabel, row, 0, 1, 1 ); - anAdvLayout->addWidget( myTextOption, row++, 1, 1, 2 ); + myAdvWidget->createNewNodesCheck ->setText (tr( "TO_ADD_NODES" )); + myAdvWidget->removeInitialCentralPointCheck->setText (tr( "NO_INITIAL_CENTRAL_POINT" )); + myAdvWidget->boundaryRecoveryCheck ->setText (tr( "RECOVERY_VERSION" )); + myAdvWidget->FEMCorrectionCheck ->setText (tr( "FEM_CORRECTION" )); + myAdvWidget->gradationLabel ->setText (tr( "GHS3D_GRADATION" )); + myAdvWidget->gradationSpinBox->RangeStepAndValidator(1.05, 5.0, 0.05, "length_precision"); + myAdvWidget->textOptionLabel->setText(tr( "TEXT_OPTION" )); // Enforced vertices parameters myEnfGroup = new QWidget(); @@ -646,10 +617,13 @@ QFrame* GHS3DPluginGUI_HypothesisCreator::buildFrame() // connections //connect( myToMeshHolesCheck, SIGNAL( toggled( bool ) ), this, SLOT( onToMeshHoles(bool))); - connect( myMaximumMemoryCheck, SIGNAL( toggled( bool ) ), this, SLOT( updateWidgets() ) ); - connect( myInitialMemoryCheck, SIGNAL( toggled( bool ) ), this, SLOT( updateWidgets() ) ); - connect( myBoundaryRecoveryCheck, SIGNAL( toggled( bool ) ), this, SLOT( updateWidgets() ) ); - connect( dirBtn, SIGNAL( clicked() ), this, SLOT( onDirBtnClicked() ) ); + connect( myAdvWidget->maxMemoryCheck, SIGNAL( toggled( bool ) ), this, SLOT( updateWidgets() ) ); + connect( myAdvWidget->initialMemoryCheck, SIGNAL( toggled( bool ) ), this, SLOT( updateWidgets() ) ); + connect( myAdvWidget->boundaryRecoveryCheck, SIGNAL( toggled( bool ) ), this, SLOT( updateWidgets() ) ); + connect( myAdvWidget->logInFileCheck, SIGNAL( toggled( bool ) ), this, SLOT( updateWidgets() ) ); + connect( myAdvWidget->keepWorkingFilesCheck, SIGNAL( toggled( bool ) ), this, SLOT( updateWidgets() ) ); + connect( myAdvWidget->workingDirectoryPushButton, SIGNAL( clicked() ), this, SLOT( onDirBtnClicked() ) ); + connect( myEnforcedTableWidget, SIGNAL( itemClicked(QTableWidgetItem *)), this, SLOT( synchronizeCoords() ) ); connect( myEnforcedTableWidget, SIGNAL( itemChanged(QTableWidgetItem *)), this, SLOT( updateEnforcedVertexValues(QTableWidgetItem *) ) ); connect( myEnforcedTableWidget, SIGNAL( itemSelectionChanged() ), this, SLOT( synchronizeCoords() ) ); @@ -1394,25 +1368,33 @@ void GHS3DPluginGUI_HypothesisCreator::onToMeshHoles(bool isOn) void GHS3DPluginGUI_HypothesisCreator::onDirBtnClicked() { - QString dir = SUIT_FileDlg::getExistingDirectory( dlg(), myWorkingDir->text(), QString() ); + QString dir = SUIT_FileDlg::getExistingDirectory( dlg(), myAdvWidget->workingDirectoryLineEdit->text(), QString() ); if ( !dir.isEmpty() ) - myWorkingDir->setText( dir ); + myAdvWidget->workingDirectoryLineEdit->setText( dir ); } void GHS3DPluginGUI_HypothesisCreator::updateWidgets() { //myToMakeGroupsOfDomains->setEnabled( myToMeshHolesCheck->isChecked() ); - myMaximumMemorySpin->setEnabled( myMaximumMemoryCheck->isChecked() ); - myInitialMemoryCheck->setEnabled( !myBoundaryRecoveryCheck->isChecked() ); - myInitialMemorySpin->setEnabled( myInitialMemoryCheck->isChecked() && !myBoundaryRecoveryCheck->isChecked() ); - myOptimizationLevelCombo->setEnabled( !myBoundaryRecoveryCheck->isChecked() ); + myAdvWidget->maxMemorySpin->setEnabled( myAdvWidget->maxMemoryCheck->isChecked() ); + myAdvWidget->initialMemoryCheck->setEnabled( !myAdvWidget->boundaryRecoveryCheck->isChecked() ); + myAdvWidget->initialMemorySpin->setEnabled( myAdvWidget->initialMemoryCheck->isChecked() && !myAdvWidget->boundaryRecoveryCheck->isChecked() ); + myOptimizationLevelCombo->setEnabled( !myAdvWidget->boundaryRecoveryCheck->isChecked() ); + if ( sender() == myAdvWidget->logInFileCheck || + sender() == myAdvWidget->keepWorkingFilesCheck ) + { + bool logFileRemovable = myAdvWidget->logInFileCheck->isChecked() && + !myAdvWidget->keepWorkingFilesCheck->isChecked(); + + myAdvWidget->removeLogOnSuccessCheck->setEnabled( logFileRemovable ); + } } bool GHS3DPluginGUI_HypothesisCreator::checkParams(QString& msg) const { MESSAGE("GHS3DPluginGUI_HypothesisCreator::checkParams"); - if ( !QFileInfo( myWorkingDir->text().trimmed() ).isWritable() ) { + if ( !QFileInfo( myAdvWidget->workingDirectoryLineEdit->text().trimmed() ).isWritable() ) { SUIT_MessageBox::warning( dlg(), tr( "SMESH_WRN_WARNING" ), tr( "GHS3D_PERMISSION_DENIED" ) ); @@ -1432,24 +1414,26 @@ void GHS3DPluginGUI_HypothesisCreator::retrieveParams() const if ( myName ) myName->setText( data.myName ); - myToMeshHolesCheck ->setChecked ( data.myToMeshHoles ); - myToMakeGroupsOfDomains ->setChecked ( data.myToMakeGroupsOfDomains ); - myOptimizationLevelCombo ->setCurrentIndex( data.myOptimizationLevel ); - myMaximumMemoryCheck ->setChecked ( data.myMaximumMemory > 0 ); - myMaximumMemorySpin ->setValue ( qMax( data.myMaximumMemory, - myMaximumMemorySpin->minimum() )); - myInitialMemoryCheck ->setChecked ( data.myInitialMemory > 0 ); - myInitialMemorySpin ->setValue ( qMax( data.myInitialMemory, - myInitialMemorySpin->minimum() )); - myWorkingDir ->setText ( data.myWorkingDir ); - myKeepFiles ->setChecked ( data.myKeepFiles ); - myVerboseLevelSpin ->setValue ( data.myVerboseLevel ); - myToCreateNewNodesCheck ->setChecked ( data.myToCreateNewNodes ); - myRemoveInitialCentralPointCheck ->setChecked ( data.myRemoveInitialCentralPoint ); - myBoundaryRecoveryCheck ->setChecked ( data.myBoundaryRecovery ); - myFEMCorrectionCheck ->setChecked ( data.myFEMCorrection ); - myGradation ->setValue ( data.myGradation ); - myTextOption ->setText ( data.myTextOption ); + myToMeshHolesCheck ->setChecked ( data.myToMeshHoles ); + myToMakeGroupsOfDomains ->setChecked ( data.myToMakeGroupsOfDomains ); + myOptimizationLevelCombo ->setCurrentIndex( data.myOptimizationLevel ); + myAdvWidget->maxMemoryCheck ->setChecked ( data.myMaximumMemory > 0 ); + myAdvWidget->maxMemorySpin ->setValue ( qMax( data.myMaximumMemory, + myAdvWidget->maxMemorySpin->minimum() )); + myAdvWidget->initialMemoryCheck ->setChecked ( data.myInitialMemory > 0 ); + myAdvWidget->initialMemorySpin ->setValue ( qMax( data.myInitialMemory, + myAdvWidget->initialMemorySpin->minimum() )); + myAdvWidget->workingDirectoryLineEdit ->setText ( data.myWorkingDir ); + myAdvWidget->keepWorkingFilesCheck ->setChecked ( data.myKeepFiles ); + myAdvWidget->verboseLevelSpin ->setValue ( data.myVerboseLevel ); + myAdvWidget->createNewNodesCheck ->setChecked ( data.myToCreateNewNodes ); + myAdvWidget->removeInitialCentralPointCheck ->setChecked ( data.myRemoveInitialCentralPoint ); + myAdvWidget->boundaryRecoveryCheck ->setChecked ( data.myBoundaryRecovery ); + myAdvWidget->FEMCorrectionCheck ->setChecked ( data.myFEMCorrection ); + myAdvWidget->gradationSpinBox ->setValue ( data.myGradation ); + myAdvWidget->textOptionLineEdit ->setText ( data.myTextOption ); + myAdvWidget->logInFileCheck ->setChecked ( !data.myLogInStandardOutput ); + myAdvWidget->removeLogOnSuccessCheck ->setChecked ( data.myRemoveLogOnSuccess ); TEnfVertexList::const_iterator it; int rowCount = 0; @@ -1692,6 +1676,8 @@ bool GHS3DPluginGUI_HypothesisCreator::readParamsFromHypo( GHS3DHypothesisData& h_data.myFEMCorrection = h->GetFEMCorrection(); h_data.myGradation = h->GetGradation(); h_data.myTextOption = h->GetTextOption(); + h_data.myLogInStandardOutput = h->GetStandardOutputLog(); + h_data.myRemoveLogOnSuccess = h->GetRemoveLogOnSuccess(); GHS3DPlugin::GHS3DEnforcedVertexList_var vertices = h->GetEnforcedVertices(); MESSAGE("vertices->length(): " << vertices->length()); @@ -1762,24 +1748,28 @@ bool GHS3DPluginGUI_HypothesisCreator::storeParamsToHypo( const GHS3DHypothesisD h->SetInitialMemory ( h_data.myInitialMemory ); if ( h->GetOptimizationLevel() != h_data.myOptimizationLevel ) h->SetOptimizationLevel( h_data.myOptimizationLevel ); - if ( h->GetKeepFiles() != h_data.myKeepFiles ) + if ( h->GetKeepFiles() != h_data.myKeepFiles ) h->SetKeepFiles ( h_data.myKeepFiles ); if ( h->GetWorkingDirectory() != h_data.myWorkingDir ) h->SetWorkingDirectory ( h_data.myWorkingDir.toLatin1().constData() ); - if ( h->GetVerboseLevel() != h_data.myVerboseLevel ) - h->SetVerboseLevel ( h_data.myVerboseLevel ); + if ( h->GetVerboseLevel() != h_data.myVerboseLevel ) + h->SetVerboseLevel ( h_data.myVerboseLevel ); if ( h->GetToCreateNewNodes() != h_data.myToCreateNewNodes ) - h->SetToCreateNewNodes( h_data.myToCreateNewNodes ); + h->SetToCreateNewNodes( h_data.myToCreateNewNodes ); if ( h->GetToRemoveCentralPoint() != h_data.myRemoveInitialCentralPoint ) h->SetToRemoveCentralPoint( h_data.myRemoveInitialCentralPoint ); if ( h->GetToUseBoundaryRecoveryVersion() != h_data.myBoundaryRecovery ) h->SetToUseBoundaryRecoveryVersion( h_data.myBoundaryRecovery ); if ( h->GetFEMCorrection() != h_data.myFEMCorrection ) - h->SetFEMCorrection( h_data.myFEMCorrection ); - if ( h->GetGradation() != h_data.myGradation ) - h->SetGradation ( h_data.myGradation ); - if ( h->GetTextOption() != h_data.myTextOption ) + h->SetFEMCorrection ( h_data.myFEMCorrection ); + if ( h->GetGradation() != h_data.myGradation ) + h->SetGradation ( h_data.myGradation ); + if ( h->GetTextOption() != h_data.myTextOption ) h->SetTextOption ( h_data.myTextOption.toLatin1().constData() ); + if ( h->GetStandardOutputLog() != h_data.myLogInStandardOutput ) + h->SetStandardOutputLog( h_data.myLogInStandardOutput ); + if ( h->GetRemoveLogOnSuccess() != h_data.myRemoveLogOnSuccess ) + h->SetRemoveLogOnSuccess( h_data.myRemoveLogOnSuccess ); // Enforced vertices int nbVertex = (int) h_data.myEnforcedVertices.size(); @@ -1868,18 +1858,20 @@ bool GHS3DPluginGUI_HypothesisCreator::readParamsFromWidgets( GHS3DHypothesisDat h_data.myName = myName ? myName->text() : ""; h_data.myToMeshHoles = myToMeshHolesCheck->isChecked(); h_data.myToMakeGroupsOfDomains = myToMakeGroupsOfDomains->isChecked(); - h_data.myMaximumMemory = myMaximumMemoryCheck->isChecked() ? myMaximumMemorySpin->value() : -1; - h_data.myInitialMemory = myInitialMemoryCheck->isChecked() ? myInitialMemorySpin->value() : -1; + h_data.myMaximumMemory = myAdvWidget->maxMemoryCheck->isChecked() ? myAdvWidget->maxMemorySpin->value() : -1; + h_data.myInitialMemory = myAdvWidget->initialMemoryCheck->isChecked() ? myAdvWidget->initialMemorySpin->value() : -1; h_data.myOptimizationLevel = myOptimizationLevelCombo->currentIndex(); - h_data.myKeepFiles = myKeepFiles->isChecked(); - h_data.myWorkingDir = myWorkingDir->text().trimmed(); - h_data.myVerboseLevel = myVerboseLevelSpin->value(); - h_data.myToCreateNewNodes = myToCreateNewNodesCheck->isChecked(); - h_data.myRemoveInitialCentralPoint = myRemoveInitialCentralPointCheck->isChecked(); - h_data.myBoundaryRecovery = myBoundaryRecoveryCheck->isChecked(); - h_data.myFEMCorrection = myFEMCorrectionCheck->isChecked(); - h_data.myGradation = myGradation->value(); - h_data.myTextOption = myTextOption->text(); + h_data.myKeepFiles = myAdvWidget->keepWorkingFilesCheck->isChecked(); + h_data.myWorkingDir = myAdvWidget->workingDirectoryLineEdit->text().trimmed(); + h_data.myVerboseLevel = myAdvWidget->verboseLevelSpin->value(); + h_data.myToCreateNewNodes = myAdvWidget->createNewNodesCheck->isChecked(); + h_data.myRemoveInitialCentralPoint = myAdvWidget->removeInitialCentralPointCheck->isChecked(); + h_data.myBoundaryRecovery = myAdvWidget->boundaryRecoveryCheck->isChecked(); + h_data.myFEMCorrection = myAdvWidget->FEMCorrectionCheck->isChecked(); + h_data.myGradation = myAdvWidget->gradationSpinBox->value(); + h_data.myTextOption = myAdvWidget->textOptionLineEdit->text(); + h_data.myLogInStandardOutput = !myAdvWidget->logInFileCheck->isChecked(); + h_data.myRemoveLogOnSuccess = myAdvWidget->removeLogOnSuccessCheck->isChecked(); // Enforced vertices h_data.myEnforcedVertices.clear(); diff --git a/src/GUI/GHS3DPluginGUI_HypothesisCreator.h b/src/GUI/GHS3DPluginGUI_HypothesisCreator.h index a9830d9..29a68d7 100644 --- a/src/GUI/GHS3DPluginGUI_HypothesisCreator.h +++ b/src/GUI/GHS3DPluginGUI_HypothesisCreator.h @@ -61,6 +61,7 @@ class SMESHGUI_SpinBox; class StdMeshersGUI_ObjectReferenceParamWdg; class LightApp_SelectionMgr; class SUIT_SelectionFilter; +class GHS3DPluginGUI_AdvWidget; class QTEnfVertex { @@ -140,7 +141,8 @@ typedef std::set< TEnfMesh*, CompareEnfMeshes > TEnfMeshList; typedef struct { - bool myToMeshHoles,myToMakeGroupsOfDomains,myKeepFiles,myToCreateNewNodes,myBoundaryRecovery,myFEMCorrection,myRemoveInitialCentralPoint; + bool myToMeshHoles,myToMakeGroupsOfDomains,myKeepFiles,myToCreateNewNodes,myBoundaryRecovery,myFEMCorrection,myRemoveInitialCentralPoint, + myLogInStandardOutput, myRemoveLogOnSuccess; int myMaximumMemory,myInitialMemory,myOptimizationLevel; QString myName,myWorkingDir,myTextOption; double myGradation; @@ -213,20 +215,8 @@ private: QCheckBox* myToMakeGroupsOfDomains; QComboBox* myOptimizationLevelCombo; - QWidget* myAdvGroup; - QCheckBox* myMaximumMemoryCheck; - QSpinBox* myMaximumMemorySpin; - QCheckBox* myInitialMemoryCheck; - QSpinBox* myInitialMemorySpin; - QLineEdit* myWorkingDir; - QCheckBox* myKeepFiles; - QSpinBox* myVerboseLevelSpin; - QCheckBox* myToCreateNewNodesCheck; - QCheckBox* myRemoveInitialCentralPointCheck; - QCheckBox* myBoundaryRecoveryCheck; - QCheckBox* myFEMCorrectionCheck; - SMESHGUI_SpinBox* myGradation; - QLineEdit* myTextOption; + QWidget* myAdvGroup; + GHS3DPluginGUI_AdvWidget* myAdvWidget; QWidget* myEnfGroup; QPixmap iconVertex, iconCompound; diff --git a/src/GUI/GHS3DPlugin_msg_en.ts b/src/GUI/GHS3DPlugin_msg_en.ts index b77bcb3..a7e3aca 100644 --- a/src/GUI/GHS3DPlugin_msg_en.ts +++ b/src/GUI/GHS3DPlugin_msg_en.ts @@ -29,11 +29,15 @@ GHS3D_TO_MESH_HOLES - To mesh holes + Mesh holes GHS3D_TO_MAKE_DOMAIN_GROUPS - To make groups of domains + Make groups of domains + + + ADVANCED_MESHING_GROUP_TITLE + Advanced meshing options INIT_MEMORY_SIZE @@ -41,7 +45,7 @@ KEEP_WORKING_FILES - To keep working files + Keep all working files LEVEL_NONE @@ -63,30 +67,46 @@ LEVEL_STRONG Strong + + LOG_IN_FILE + Print log in a file + + + LOG_GROUP_TITLE + Logs and debug + MAX_MEMORY_SIZE Maximum memory size MEGABYTE - Megabytes + MB + + + MEMORY_GROUP_TITLE + Memory settings NO_INITIAL_CENTRAL_POINT - To remove initial central point + Remove initial central point RECOVERY_VERSION - To use boundary recovery version + Use boundary recovery version FEM_CORRECTION - To use FEM correction + Use FEM correction GHS3D_GRADATION Volumic gradation + + REMOVE_LOG_ON_SUCCESS + Remove log on success + SELECT_DIR ... @@ -97,7 +117,7 @@ TO_ADD_NODES - To create new nodes + Create new nodes VERBOSE_LEVEL diff --git a/src/GUI/GHS3DPlugin_msg_fr.ts b/src/GUI/GHS3DPlugin_msg_fr.ts index c2291bd..7bb77a8 100755 --- a/src/GUI/GHS3DPlugin_msg_fr.ts +++ b/src/GUI/GHS3DPlugin_msg_fr.ts @@ -35,13 +35,17 @@ GHS3D_TO_MESH_HOLES Mailler les trous + + ADVANCED_MESHING_GROUP_TITLE + Options de maillage avancées + INIT_MEMORY_SIZE Taille initiale de la mémoire KEEP_WORKING_FILES - Conserver les fichiers temporaires + Conserver tous les fichiers temporaires LEVEL_NONE @@ -63,6 +67,14 @@ LEVEL_STRONG Fort + + LOG_IN_FILE + Imprimer le log dans un fichier + + + LOG_GROUP_TITLE + Logs et debug + MAX_MEMORY_SIZE Taille maximale de la mémoire @@ -71,6 +83,10 @@ MEGABYTE Megabytes + + MEMORY_GROUP_TITLE + Paramètres mémoire + NO_INITIAL_CENTRAL_POINT Supprimer le point central initial @@ -81,12 +97,16 @@ FEM_CORRECTION - Utiliser correction FEM + Utiliser la correction FEM GHS3D_GRADATION Gradation volumique + + REMOVE_LOG_ON_SUCCESS + Supprimer le log en cas de succès + SELECT_DIR ... diff --git a/src/GUI/Makefile.am b/src/GUI/Makefile.am index 6d70baa..489fdf7 100644 --- a/src/GUI/Makefile.am +++ b/src/GUI/Makefile.am @@ -27,6 +27,7 @@ include $(top_srcdir)/adm_local/unix/make_common_starter.am # header files salomeinclude_HEADERS = \ + GHS3DPluginGUI_Dlg.h \ GHS3DPluginGUI_HypothesisCreator.h \ GHS3DPluginGUI_Enums.h @@ -35,10 +36,17 @@ lib_LTLIBRARIES = libGHS3DPluginGUI.la dist_libGHS3DPluginGUI_la_SOURCES = \ GHS3DPluginGUI.cxx \ - GHS3DPluginGUI_HypothesisCreator.cxx + GHS3DPluginGUI_HypothesisCreator.cxx \ + GHS3DPluginGUI_AdvWidget.cxx MOC_FILES = \ - GHS3DPluginGUI_HypothesisCreator_moc.cxx + GHS3DPluginGUI_HypothesisCreator_moc.cxx \ + GHS3DPluginGUI_Dlg_moc.cxx + +UIC_FILES = \ + ui_GHS3DPluginGUI_AdvWidget_QTD.h + +BUILT_SOURCES = $(UIC_FILES) nodist_libGHS3DPluginGUI_la_SOURCES= \ $(MOC_FILES) -- 2.39.2

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 V#n|QjO@snGbhQjME7k47{s%82R=fZJ diff --git a/doc/salome/gui/GHS3DPLUGIN/images/ghs3d_parameters_basic.png b/doc/salome/gui/GHS3DPLUGIN/images/ghs3d_parameters_basic.png index e71688edaae24fe3806061178a7beaab3aa6c0a2..450a4a12789c16cd8a2054805700804b7b30f5d5 100644 GIT binary patch literal 20401 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 V(IYa}7YO+E?8!^XB5^(6{|3Rf_OAc{ literal 20318 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 - allows to define the name of the hypothesis (GHS3D Parameters by default). -- To mesh holes - if checked, the algorithm will +- Mesh holes - if checked, the algorithm will create mesh in the holes inside a solid shape, else only the outermost shape will be meshed. Volumic elements created within holes are bound to the solid. -- To make groups of domains - if checked, the algorithm will +- Make groups of domains - if checked, the algorithm will create groups of just generated elements corresponding to each mesh domain.
@@ -46,6 +46,8 @@ but can be time-consuming): \image html ghs3d_parameters_advanced.png +\subsection memory_settings Memory settings + - Maximum memory size - launches ghs3d software with work space limited to the specified amount of RAM, in Mbytes. If this option is checked off, the software will be launched with 7O% of the total RAM space. @@ -54,13 +56,11 @@ checked off, the software will be launched with 7O% of the total RAM space. the specified amount of work space, in Mbytes. If this option is checked off, the software will be started with 100 Megabytes of working space. +\subsection log Logs and debug + - Working directory - allows defining the folder for input and output files of ghs3d software, which are the files starting with "GHS3D_" prefix. -- Keep working files - allows checking input and output files -of ghs3d software, while usually these files are removed after the -launch of the mesher. - - Verbose level - to choose verbosity level in the range from 0 to 10. @@ -73,11 +73,25 @@ launch of the mesher. - 10, same as 2 plus the main steps in the computation, quality statistics histogram of the skin mesh, quality statistics histogram together with the characteristics of the final mesh. + +- Print log in a file - if this option is checked on the log is printed in a +file placed in the working directory, otherwise it is printed on the standard output. + +- Remove log on success - if this option is checked on the log file is kept only +if an error occurs during the computation. This option is only available if Print log in a file +is enabled (there must be a log file to delete it) and Keep all working files is disabled +(in this case the log file is always kept). + +- Keep all working files - allows checking input and output files +of ghs3d software, while usually these files are removed after the +launch of the mesher. The log file (if any) is also kept if this option is checked. + +\subsection advanced_meshing_options Advanced meshing options -- To create new nodes - if this option is checked off, ghs3d +- Create new nodes - if this option is checked off, ghs3d tries to create tetrahedrons using only the nodes of the 2D mesh. -- To remove the initial central point TetMesh-GHS3D adds an internal point +- Remove the initial central point TetMesh-GHS3D adds an internal point at the gravity centre of the bounding box to speed up and to simplify the meshing process. However, it is possible to refrain from creating this point by using the command line option -no initial central point. This can be @@ -91,7 +105,7 @@ Note: when using this option, the speed of the meshing process may decrease, and the quality may change. Note: the boundary regeneration may fail with this option, in some rare cases. -- To use boundary recovery version - enables using a +- Use boundary recovery version - enables using a boundary recovery module which tries to create volume meshes starting from very poor quality surface meshes (almost flat triangles on the surface, high density propagation, @@ -100,7 +114,7 @@ resulting volume mesh will however most likely have a very poor quality (poor aspect ratio of elements, tetrahedra with a very small positive volume). -- To use FEM correction - Applies finite-element correction by +- Use FEM correction - Applies finite-element correction by replacing overconstrained elements where it is possible. At first the process slices the overconstrained edges and at second the overconstrained facets. This ensures that there are no edges with two boundary diff --git a/idl/GHS3DPlugin_Algorithm.idl b/idl/GHS3DPlugin_Algorithm.idl index 01be915..3cefea0 100644 --- a/idl/GHS3DPlugin_Algorithm.idl +++ b/idl/GHS3DPlugin_Algorithm.idl @@ -152,6 +152,16 @@ module GHS3DPlugin */ void SetGradation(in double gradation); double GetGradation(); + /*! + * Print log in standard output + */ + void SetStandardOutputLog(in boolean logInStandardOutput); + boolean GetStandardOutputLog(); + /*! + * Remove log file on success + */ + void SetRemoveLogOnSuccess(in boolean removeLogOnSuccess); + boolean GetRemoveLogOnSuccess(); /*! * To set an enforced vertex */ diff --git a/src/GHS3DPlugin/GHS3DPluginBuilder.py b/src/GHS3DPlugin/GHS3DPluginBuilder.py index 08dfb09..ec39a46 100644 --- a/src/GHS3DPlugin/GHS3DPluginBuilder.py +++ b/src/GHS3DPlugin/GHS3DPluginBuilder.py @@ -126,11 +126,27 @@ class GHS3D_Algorithm(Mesh_Algorithm): self.Parameters().SetWorkingDirectory(path) pass - ## To keep working files or remove them. Log file remains in case of errors anyway. + ## To keep working files or remove them. # @param toKeep "keep working files" flag value def SetKeepFiles(self, toKeep): self.Parameters().SetKeepFiles(toKeep) pass + + ## Remove or not the log file (if any) in case of successful computation. + # The log file remains in case of errors anyway. If + # the "keep working files" flag is set to true, this option + # has no effect. + # @param toRemove "remove log on success" flag value + def SetRemoveLogOnSuccess(self, toRemove): + self.Parameters().SetRemoveLogOnSuccess(toRemove) + pass + + ## Print the the log in a file. If set to false, the + # log is printed on the standard output + # @param toPrintLogInFile "print log in a file" flag value + def SetPrintLogInFile(self, toPrintLogInFile): + self.Parameters().SetStandardOutputLog(not toPrintLogInFile) + pass ## Set verbosity level [0-10]. # @param level verbosity level diff --git a/src/GHS3DPlugin/GHS3DPlugin_GHS3D.cxx b/src/GHS3DPlugin/GHS3DPlugin_GHS3D.cxx index 0ff403a..fd0c7bb 100644 --- a/src/GHS3DPlugin/GHS3DPlugin_GHS3D.cxx +++ b/src/GHS3DPlugin/GHS3DPlugin_GHS3D.cxx @@ -183,6 +183,7 @@ bool GHS3DPlugin_GHS3D::CheckHypothesis ( SMESH_Mesh& aMesh, _hyp = 0; _viscousLayersHyp = 0; _keepFiles = false; + _removeLogOnSuccess = true; const list & hyps = GetUsedHypothesis(aMesh, aShape, /*ignoreAuxiliary=*/false); @@ -195,7 +196,10 @@ bool GHS3DPlugin_GHS3D::CheckHypothesis ( SMESH_Mesh& aMesh, _viscousLayersHyp = dynamic_cast< const StdMeshers_ViscousLayers*> ( *h ); } if ( _hyp ) + { _keepFiles = _hyp->GetKeepFiles(); + _removeLogOnSuccess = _hyp->GetRemoveLogOnSuccess(); + } return true; } @@ -3434,7 +3438,9 @@ bool GHS3DPlugin_GHS3D::Compute(SMESH_Mesh& theMesh, TCollection_AsciiString cmd( (char*)GHS3DPlugin_Hypothesis::CommandToRun( _hyp ).c_str() ); cmd += TCollection_AsciiString(" -f ") + aGenericName; // file to read - cmd += TCollection_AsciiString(" 1>" ) + aLogFileName; // dump into file + + if ( !_hyp->GetStandardOutputLog() ) + cmd += TCollection_AsciiString(" 1>" ) + aLogFileName; // dump into file // The output .mesh file does not contain yet the subdomain-info (Ghs3D 4.2) // cmd += TCollection_AsciiString(" --in ") + aGenericName; // cmd += TCollection_AsciiString(" --required_vertices ") + aGenericNameRequired; @@ -3507,7 +3513,7 @@ bool GHS3DPlugin_GHS3D::Compute(SMESH_Mesh& theMesh, if ( Ok ) { - if ( !_keepFiles ) + if ( _removeLogOnSuccess ) removeFile( aLogFileName ); // if ( _hyp && _hyp->GetToMakeGroupsOfDomains() ) @@ -3528,8 +3534,7 @@ bool GHS3DPlugin_GHS3D::Compute(SMESH_Mesh& theMesh, } if ( !_keepFiles ) { - if (! Ok) - if(_compute_canceled) + if (! Ok && _compute_canceled) removeFile( aLogFileName ); removeFile( aFacesFileName ); removeFile( aPointsFileName ); @@ -3745,7 +3750,7 @@ bool GHS3DPlugin_GHS3D::Compute(SMESH_Mesh& theMesh, if ( Ok ) { - if ( !_keepFiles ) + if ( _removeLogOnSuccess ) removeFile( aLogFileName ); //if ( !toMakeGroupsOfDomains && _hyp && _hyp->GetToMakeGroupsOfDomains() ) @@ -3766,8 +3771,7 @@ bool GHS3DPlugin_GHS3D::Compute(SMESH_Mesh& theMesh, if ( !_keepFiles ) { - if (! Ok) - if(_compute_canceled) + if (! Ok && _compute_canceled) removeFile( aLogFileName ); removeFile( aGMFFileName ); removeFile( aResultFileName ); diff --git a/src/GHS3DPlugin/GHS3DPlugin_GHS3D.hxx b/src/GHS3DPlugin/GHS3DPlugin_GHS3D.hxx index 232c16e..30ba8b0 100644 --- a/src/GHS3DPlugin/GHS3DPlugin_GHS3D.hxx +++ b/src/GHS3DPlugin/GHS3DPlugin_GHS3D.hxx @@ -95,6 +95,7 @@ private: int _iShape; int _nbShape; bool _keepFiles; + bool _removeLogOnSuccess; SALOMEDS::Study_var myStudy; SMESH_Gen_i* smeshGen_i; diff --git a/src/GHS3DPlugin/GHS3DPlugin_Hypothesis.cxx b/src/GHS3DPlugin/GHS3DPlugin_Hypothesis.cxx index 3ec070f..1c1c6b9 100644 --- a/src/GHS3DPlugin/GHS3DPlugin_Hypothesis.cxx +++ b/src/GHS3DPlugin/GHS3DPlugin_Hypothesis.cxx @@ -54,6 +54,7 @@ GHS3DPlugin_Hypothesis::GHS3DPlugin_Hypothesis(int hypId, int studyId, SMESH_Gen myToUseFemCorrection(DefaultToUseFEMCorrection()), myToRemoveCentralPoint(DefaultToRemoveCentralPoint()), myGradation(DefaultGradation()), + myLogInStandardOutput(DefaultStandardOutputLog()), _enfVertexList(DefaultGHS3DEnforcedVertexList()), _enfVertexCoordsSizeList(DefaultGHS3DEnforcedVertexCoordsValues()), _enfVertexEntrySizeList(DefaultGHS3DEnforcedVertexEntryValues()), @@ -384,6 +385,48 @@ double GHS3DPlugin_Hypothesis::GetGradation() const return myGradation; } +//======================================================================= +//function : SetStandardOutputLog +//======================================================================= + +void GHS3DPlugin_Hypothesis::SetStandardOutputLog(bool logInStandardOutput) +{ + if ( myLogInStandardOutput != logInStandardOutput ) { + myLogInStandardOutput = logInStandardOutput; + NotifySubMeshesHypothesisModification(); + } +} + +//======================================================================= +//function : GetStandardOutputLog +//======================================================================= + +bool GHS3DPlugin_Hypothesis::GetStandardOutputLog() const +{ + return myLogInStandardOutput; +} + +//======================================================================= +//function : SetRemoveLogOnSuccess +//======================================================================= + +void GHS3DPlugin_Hypothesis::SetRemoveLogOnSuccess(bool removeLogOnSuccess) +{ + if ( myRemoveLogOnSuccess != removeLogOnSuccess ) { + myRemoveLogOnSuccess = removeLogOnSuccess; + NotifySubMeshesHypothesisModification(); + } +} + +//======================================================================= +//function : GetRemoveLogOnSuccess +//======================================================================= + +bool GHS3DPlugin_Hypothesis::GetRemoveLogOnSuccess() const +{ + return myRemoveLogOnSuccess; +} + //======================================================================= //function : SetEnforcedVertex //======================================================================= @@ -883,6 +926,16 @@ bool GHS3DPlugin_Hypothesis::DefaultKeepFiles() return false; } +//======================================================================= +//function : DefaultRemoveLogOnSuccess +//======================================================================= + +bool GHS3DPlugin_Hypothesis::DefaultRemoveLogOnSuccess() +{ + return false; +} + + //======================================================================= //function : DefaultVerboseLevel //======================================================================= @@ -937,6 +990,15 @@ double GHS3DPlugin_Hypothesis::DefaultGradation() return 1.05; } +//======================================================================= +//function : DefaultStandardOutputLog +//======================================================================= + +bool GHS3DPlugin_Hypothesis::DefaultStandardOutputLog() +{ + return false; +} + // //======================================================================= // //function : DefaultID2SizeMap // //======================================================================= diff --git a/src/GHS3DPlugin/GHS3DPlugin_Hypothesis.hxx b/src/GHS3DPlugin/GHS3DPlugin_Hypothesis.hxx index 15ccbc2..23983fa 100644 --- a/src/GHS3DPlugin/GHS3DPlugin_Hypothesis.hxx +++ b/src/GHS3DPlugin/GHS3DPlugin_Hypothesis.hxx @@ -204,6 +204,16 @@ public: */ void SetGradation(double gradation); double GetGradation() const ; + /*! + * Print log in standard output + */ + void SetStandardOutputLog(bool logInStandardOutput); + bool GetStandardOutputLog() const ; + /*! + * Remove log file on success + */ + void SetRemoveLogOnSuccess(bool removeLogOnSuccess); + bool GetRemoveLogOnSuccess() const ; // struct TEnforcedEdge { @@ -289,6 +299,8 @@ public: static bool DefaultToUseBoundaryRecoveryVersion(); static bool DefaultToUseFEMCorrection(); static bool DefaultToRemoveCentralPoint(); + static bool DefaultStandardOutputLog(); + static bool DefaultRemoveLogOnSuccess(); static double DefaultGradation(); static TGHS3DEnforcedVertex DefaultGHS3DEnforcedVertex() {return TGHS3DEnforcedVertex();} @@ -337,6 +349,8 @@ private: bool myToUseBoundaryRecoveryVersion; bool myToUseFemCorrection; bool myToRemoveCentralPoint; + bool myLogInStandardOutput; + bool myRemoveLogOnSuccess; std::string myTextOption; double myGradation; diff --git a/src/GHS3DPlugin/GHS3DPlugin_Hypothesis_i.cxx b/src/GHS3DPlugin/GHS3DPlugin_Hypothesis_i.cxx index eb3eeb3..3f5bed7 100644 --- a/src/GHS3DPlugin/GHS3DPlugin_Hypothesis_i.cxx +++ b/src/GHS3DPlugin/GHS3DPlugin_Hypothesis_i.cxx @@ -397,6 +397,48 @@ CORBA::Double GHS3DPlugin_Hypothesis_i::GetGradation() return this->GetImpl()->GetGradation(); } +//======================================================================= +//function : SetStandardOutputLog +//======================================================================= + +void GHS3DPlugin_Hypothesis_i::SetStandardOutputLog(CORBA::Boolean logInStandardOutput) +{ + ASSERT(myBaseImpl); + this->GetImpl()->SetStandardOutputLog(logInStandardOutput); + SMESH::TPythonDump() << _this() << ".SetPrintLogInFile( " << !logInStandardOutput << " )"; +} + +//======================================================================= +//function : GetStandardOutputLog +//======================================================================= + +CORBA::Boolean GHS3DPlugin_Hypothesis_i::GetStandardOutputLog() +{ + ASSERT(myBaseImpl); + return this->GetImpl()->GetStandardOutputLog(); +} + +//======================================================================= +//function : SetRemoveLogOnSuccess +//======================================================================= + +void GHS3DPlugin_Hypothesis_i::SetRemoveLogOnSuccess(CORBA::Boolean removeLogOnSuccess) +{ + ASSERT(myBaseImpl); + this->GetImpl()->SetRemoveLogOnSuccess(removeLogOnSuccess); + SMESH::TPythonDump() << _this() << ".SetRemoveLogOnSuccess( " << removeLogOnSuccess << " )"; +} + +//======================================================================= +//function : GetRemoveLogOnSuccess +//======================================================================= + +CORBA::Boolean GHS3DPlugin_Hypothesis_i::GetRemoveLogOnSuccess() +{ + ASSERT(myBaseImpl); + return this->GetImpl()->GetRemoveLogOnSuccess(); +} + //======================================================================= //function : SetEnforcedVertex //======================================================================= diff --git a/src/GHS3DPlugin/GHS3DPlugin_Hypothesis_i.hxx b/src/GHS3DPlugin/GHS3DPlugin_Hypothesis_i.hxx index 81c12dd..10aa011 100644 --- a/src/GHS3DPlugin/GHS3DPlugin_Hypothesis_i.hxx +++ b/src/GHS3DPlugin/GHS3DPlugin_Hypothesis_i.hxx @@ -134,12 +134,22 @@ class GHS3DPLUGIN_EXPORT GHS3DPlugin_Hypothesis_i: */ void SetGradation(CORBA::Double gradation); CORBA::Double GetGradation(); + /*! + * Print log in standard output + */ + void SetStandardOutputLog(CORBA::Boolean logInStandardOutput); + CORBA::Boolean GetStandardOutputLog(); + /*! + * Remove log file on success + */ + void SetRemoveLogOnSuccess(CORBA::Boolean removeLogOnSuccess); + CORBA::Boolean GetRemoveLogOnSuccess(); /*! * To set an enforced vertex */ bool p_SetEnforcedVertex(CORBA::Double size, CORBA::Double x = 0, CORBA::Double y = 0, CORBA::Double z = 0, - const char* theVertexName = "", const char* theVertexEntry = "", const char* theGroupName = "", - CORBA::Boolean isCompound = false) + const char* theVertexName = "", const char* theVertexEntry = "", const char* theGroupName = "", + CORBA::Boolean isCompound = false) throw (SALOME::SALOME_Exception); bool SetEnforcedVertex(CORBA::Double x, CORBA::Double y, CORBA::Double z, CORBA::Double size) throw (SALOME::SALOME_Exception); bool SetEnforcedVertexNamed(CORBA::Double x, CORBA::Double y, CORBA::Double z, CORBA::Double size, const char* theVertexName) throw (SALOME::SALOME_Exception); diff --git a/src/GUI/GHS3DPluginGUI_AdvWidget.cxx b/src/GUI/GHS3DPluginGUI_AdvWidget.cxx new file mode 100644 index 0000000..52cf272 --- /dev/null +++ b/src/GUI/GHS3DPluginGUI_AdvWidget.cxx @@ -0,0 +1,45 @@ +// Copyright (C) 2007-2013 CEA/DEN, EDF R&D +// +// 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. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// + +// --- +// File : GHS3DPluginGUI_Dlg.cxx +// Authors : Renaud NEDELEC (OCC) +// --- +// + +#include "GHS3DPluginGUI_Dlg.h" + +#include + +#include + + +////////////////////////////////////////// +// GHS3DPluginGUI_AdvWidget +////////////////////////////////////////// + +GHS3DPluginGUI_AdvWidget::GHS3DPluginGUI_AdvWidget( QWidget* parent, Qt::WindowFlags f ) +: QWidget( parent, f ) +{ + setupUi( this ); +} + +GHS3DPluginGUI_AdvWidget::~GHS3DPluginGUI_AdvWidget() +{ +} diff --git a/src/GUI/GHS3DPluginGUI_AdvWidget_QTD.ui b/src/GUI/GHS3DPluginGUI_AdvWidget_QTD.ui new file mode 100644 index 0000000..35b70cb --- /dev/null +++ b/src/GUI/GHS3DPluginGUI_AdvWidget_QTD.ui @@ -0,0 +1,225 @@ + + + GHS3DPluginGUI_AdvWidget_QTD + + + + 0 + 0 + 465 + 477 + + + + Form + + + + 0 + + + 0 + + + 0 + + + + + Memory settings + + + + + + MB + + + + + + + Initial memory size + + + + + + + + 1 + 0 + + + + + + + + Max memory size + + + + + + + + 1 + 0 + + + + + + + + MB + + + + + + + + + + Logs and debug + + + + + + + + Working directory + + + + + + + + + + PushButton + + + + + + + Verbose level + + + + + + + + + + + + + + Print log in a file + + + true + + + + + + + Remove log file on success + + + true + + + + + + + + + Keep working files + + + false + + + + + + + + + + Advanced meshing options + + + + + + + + + Volumic gradation + + + + + + + Option as text + + + + + + + + + + Create new nodes + + + + + + + Remove initial central point + + + + + + + Use FEM correction + + + + + + + Use boundary recovery version + + + + + + + + + + + SMESHGUI_SpinBox + QSpinBox +