OCC_CATCH_SIGNALS;
SMESH::UpdateView();
}
- catch (std::bad_alloc) { // PAL16774 (Crash after display of many groups)
+ catch (std::bad_alloc&) { // PAL16774 (Crash after display of many groups)
SMESH::OnVisuException();
}
catch (...) { // PAL16774 (Crash after display of many groups)
case SMESHOp::OpCreateSubMesh:
if ( warnOnGeomModif() )
break; // action forbiden as geometry modified
-
+ // fall through
case SMESHOp::OpCreateMesh:
case SMESHOp::OpCompute:
case SMESHOp::OpComputeSubMesh:
case SMESHOp::OpMGAdapt:
{
SMESH::SMESH_Mesh_var aMesh = SMESH::SMESH_Mesh::_nil();
- SMESHGUI_AdaptDlg *aDlg = new SMESHGUI_AdaptDlg( this, theCommandID, aMesh);
+ SMESHGUI_AdaptDlg *objet = new SMESHGUI_AdaptDlg( this, theCommandID, aMesh);
}
// Adaptation - end
case SMESHOp::OpSplitBiQuadratic:
*
*/
//=============================================================================
-bool SMESHGUI::OnMousePress( QMouseEvent * pe, SUIT_ViewWindow * wnd )
+bool SMESHGUI::OnMousePress( QMouseEvent * /*pe*/, SUIT_ViewWindow * /*wnd*/ )
{
return false;
}
*
*/
//=============================================================================
-bool SMESHGUI::OnMouseMove( QMouseEvent * pe, SUIT_ViewWindow * wnd )
+bool SMESHGUI::OnMouseMove( QMouseEvent * /*pe*/, SUIT_ViewWindow * /*wnd*/ )
{
return true;
}
*
*/
//=============================================================================
-bool SMESHGUI::OnKeyPress( QKeyEvent * pe, SUIT_ViewWindow * wnd )
+bool SMESHGUI::OnKeyPress( QKeyEvent * /*pe*/, SUIT_ViewWindow * /*wnd*/ )
{
return true;
}
// ----- create toolbars --------------
int meshTb = createTool( tr( "TB_MESH" ), QString( "SMESHMeshToolbar" ) ) ;
- INFOS( "meshTb :" << meshTb );
createTool( SMESHOp::OpCreateMesh, meshTb );
createTool( SMESHOp::OpCreateSubMesh, meshTb );
createTool( SMESHOp::OpEditMeshOrSubMesh, meshTb );
createTool( SMESHOp::OpMeshOrder, meshTb );
int infoTb = createTool( tr( "TB_INFO" ), QString( "SMESHInformationToolbar" ) ) ;
- INFOS( "infoTb :" << infoTb );
createTool( SMESHOp::OpMeshInformation, infoTb );
//createTool( SMESHOp::OpStdInfo, meshTb );
//createTool( SMESHOp::OpWhatIs, meshTb ); // VSR: issue #0021242 (eliminate "Mesh Element Information" command)
createTool( SMESHOp::OpFindElementByPoint, infoTb );
int groupTb = createTool( tr( "TB_GROUP" ), QString( "SMESHGroupToolbar" ) ) ;
- INFOS( "groupTb :" << groupTb );
-
createTool( SMESHOp::OpCreateGroup, groupTb );
createTool( SMESHOp::OpCreateGeometryGroup, groupTb );
createTool( SMESHOp::OpConstructGroup, groupTb );
createTool( SMESHOp::OpEditGroup, groupTb );
int ctrl0dTb = createTool( tr( "TB_CTRL0D" ), QString( "SMESHNodeControlsToolbar" ) ) ;
- INFOS( "ctrl0dTb :" << ctrl0dTb );
createTool( SMESHOp::OpFreeNode, ctrl0dTb );
createTool( SMESHOp::OpEqualNode, ctrl0dTb );
//createTool( SMESHOp::OpNodeConnectivityNb, ctrl0dTb );
int ctrl1dTb = createTool( tr( "TB_CTRL1D" ), QString( "SMESHEdgeControlsToolbar" ) ) ;
- INFOS( "ctrl1dTb :" << ctrl1dTb );
createTool( SMESHOp::OpFreeBorder, ctrl1dTb );
createTool( SMESHOp::OpLength, ctrl1dTb );
createTool( SMESHOp::OpConnection, ctrl1dTb );
createTool( SMESHOp::OpEqualEdge, ctrl1dTb );
int ctrl2dTb = createTool( tr( "TB_CTRL2D" ), QString( "SMESHFaceControlsToolbar" ) ) ;
- INFOS( "ctrl2dTb :" << ctrl2dTb );
createTool( SMESHOp::OpFreeEdge, ctrl2dTb );
createTool( SMESHOp::OpFreeFace, ctrl2dTb );
createTool( SMESHOp::OpBareBorderFace, ctrl2dTb );
//createTool( SMESHOp::OpRenumberingElements, renumbTb );
int transformTb = createTool( tr( "TB_TRANSFORM" ), QString( "SMESHTransformationToolbar" ) ) ;
- INFOS( "transformTb :" << transformTb );
createTool( SMESHOp::OpMergeNodes, transformTb );
createTool( SMESHOp::OpMergeElements, transformTb );
createTool( SMESHOp::OpTranslation, transformTb );
createTool( SMESHOp::OpDuplicateNodes, transformTb );
int modifyTb = createTool( tr( "TB_MODIFY" ), QString( "SMESHModificationToolbar" ) ) ;
- INFOS( "modifyTb :" << modifyTb );
createTool( SMESHOp::OpConvertMeshToQuadratic, modifyTb );
createTool( SMESHOp::OpCreateBoundaryElements, modifyTb );
createTool( SMESHOp::OpExtrusion, modifyTb );
// Adaptation - begin
int adaptTb = createTool( tr( "TB_ADAPTATION" ),QString( "SMESHAdaptationToolbar" ) ) ;
- INFOS( "adaptTb :" << adaptTb );
createTool( SMESHOp::OpUniformRefinement, adaptTb );
createTool( SMESHOp::OpHONewCase, adaptTb );
createTool( SMESHOp::OpHOCaseFollow, adaptTb );
// Adaptation - end
int measuremTb = createTool( tr( "TB_MEASUREM" ), QString( "SMESHMeasurementsToolbar" ) ) ;
- INFOS( "measuremTb :" << measuremTb );
createTool( SMESHOp::OpMinimumDistance, measuremTb );
int dispModeTb = createTool( tr( "TB_DISP_MODE" ), QString( "SMESHDisplayModeToolbar" ) );
- INFOS( "dispModeTb :" << dispModeTb );
createTool( SMESHOp::OpUpdate, dispModeTb );
QString lc = "$"; // VSR : instead of QtxPopupSelection::defEquality();
popupMgr()->insert( separator(), -1, 0 );
createPopupItem( SMESHOp::OpFileInformation, OB, mesh, "&& selcount=1 && isImported" );
createPopupItem( SMESHOp::OpMeshInformation, OB, mesh_part );
- createPopupItem( SMESHOp::OpFindElementByPoint,OB, mesh_group, "&& selcount=1" );
+ createPopupItem( SMESHOp::OpFindElementByPoint,OB, mesh_group, "&& selcount=1 && " + hasElems );
createPopupItem( SMESHOp::OpOverallMeshQuality,OB, mesh_part );
popupMgr()->insert( separator(), -1, 0 );
createPopupItem( SMESHOp::OpCreateGroup, OB, mesh, "&& selcount=1" );
createPopupItem( SMESHOp::OpEditHypothesis, OB, hypo, "&& isEditableHyp");
createPopupItem( SMESHOp::OpUnassign, OB, hyp_alg );
popupMgr()->insert( separator(), -1, 0 );
- createPopupItem( SMESHOp::OpConvertMeshToQuadratic, OB, mesh_submesh );
+ createPopupItem( SMESHOp::OpConvertMeshToQuadratic, OB, mesh_submesh, "&& " + hasElems );
createPopupItem( SMESHOp::OpCreateBoundaryElements, OB, mesh_group, "&& selcount=1 && dim>=2");
- //popupMgr()->insert( separator(), -1, 0 );
-
- //popupMgr()->insert( separator(), -1, 0 );
+ popupMgr()->insert( separator(), -1, 0 );
// Adaptation - begin
createPopupItem( SMESHOp::OpUniformRefinement, OB, mesh );
createPopupItem( SMESHOp::OpHONewCase, OB, mesh );
- createPopupItem( SMESHOp::OpHOCaseFollow, OB, mesh );
- createPopupItem( SMESHOp::OpHONewIter, OB, mesh );
- createPopupItem( SMESHOp::OpHOIterCompute, OB, mesh );
- createPopupItem( SMESHOp::OpHOIterComputePublish, OB, mesh );
- createPopupItem( SMESHOp::OpHOEdit, OB, mesh );
- createPopupItem( SMESHOp::OpHODelete, OB, mesh );
+// createPopupItem( SMESHOp::OpHOCaseFollow, OB, mesh );
+// createPopupItem( SMESHOp::OpHONewIter, OB, mesh );
+// createPopupItem( SMESHOp::OpHOIterCompute, OB, mesh );
+// createPopupItem( SMESHOp::OpHOIterComputePublish, OB, mesh );
createPopupItem( SMESHOp::OpMGAdapt, OB, mesh );
// Adaptation - end
popupMgr()->insert( separator(), -1, 0 );
createPopupItem( SMESHOp::OpMeshInformation, View, mesh_part );
createPopupItem( SMESHOp::OpOverallMeshQuality, View, mesh_part );
- createPopupItem( SMESHOp::OpFindElementByPoint, View, mesh );
+ createPopupItem( SMESHOp::OpFindElementByPoint, View, mesh, "&& " + hasElems);
popupMgr()->insert( separator(), -1, 0 );
createPopupItem( SMESHOp::OpUpdate, OB + " " + View, mesh_part );
void SMESHGUI::ProcessEvents( vtkObject* theObject,
unsigned long theEvent,
void* theClientData,
- void* theCallData )
+ void* /*theCallData*/ )
{
if( SMESHGUI* aSMESHGUI = reinterpret_cast<SMESHGUI*>( theClientData ) ) {
if( theObject && (int) theEvent == SMESH::DeleteActorEvent ) {
int adaptTab = addPreference( tr( "ADAPT_PREF_TAB_GENERAL" ) );
int bloc, pref ;
// Refinement with HOMARD
- bloc = addPreference( tr( "ADAPT_PREF_PUBLICATION" ), adaptTab );
+ bloc = addPreference( tr( "ADAPT_PREF_HOMARD_PUBLICATION" ), adaptTab );
setPreferenceProperty( bloc, "columns", 1 );
- pref = addPreference( tr( "ADAPT_PREF_PUBLICATION_MAILLAGE_IN" ), bloc, LightApp_Preferences::Bool, "HOMARD", "publish_mesh_in" );
- pref = addPreference( tr( "ADAPT_PREF_PUBLICATION_MAILLAGE_OUT" ), bloc, LightApp_Preferences::Bool, "HOMARD", "publish_mesh_out" );
+ pref = addPreference( tr( "ADAPT_PREF_HOMARD_PUBLICATION_MAILLAGE_IN" ), bloc, LightApp_Preferences::Bool, "HOMARD", "homard_publish_mesh_in" );
+ pref = addPreference( tr( "ADAPT_PREF_HOMARD_PUBLICATION_MAILLAGE_OUT" ), bloc, LightApp_Preferences::Bool, "HOMARD", "homard_publish_mesh_out" );
- bloc = addPreference( tr( "ADAPT_PREF_YACS_MAX" ), adaptTab );
+ // YACS with HOMARD
+ bloc = addPreference( tr( "ADAPT_PREF_HOMARD_YACS" ), adaptTab );
setPreferenceProperty( bloc, "columns", 1 );
- pref = addPreference( tr( "ADAPT_PREF_YACS_MAX_ITER" ), bloc, LightApp_Preferences::IntSpin, "HOMARD", "yacs_max_iter" );
+ pref = addPreference( tr( "ADAPT_PREF_HOMARD_YACS_MAX_ITER" ), bloc, LightApp_Preferences::IntSpin, "HOMARD", "homard_yacs_max_iter" );
setPreferenceProperty( pref, "min", 0 );
setPreferenceProperty( pref, "max", 100000000 );
setPreferenceProperty( pref, "step", 1 );
- pref = addPreference( tr( "ADAPT_PREF_YACS_MAX_NODE" ), bloc, LightApp_Preferences::IntSpin, "HOMARD", "yacs_max_node" );
+ pref = addPreference( tr( "ADAPT_PREF_HOMARD_YACS_MAX_NODE" ), bloc, LightApp_Preferences::IntSpin, "HOMARD", "homard_yacs_max_node" );
setPreferenceProperty( pref, "min", 0 );
setPreferenceProperty( pref, "max", 100000000 );
setPreferenceProperty( pref, "step", 1000 );
- pref = addPreference( tr( "ADAPT_PREF_YACS_MAX_ELEM" ), bloc, LightApp_Preferences::IntSpin, "HOMARD", "yacs_max_elem" );
+ pref = addPreference( tr( "ADAPT_PREF_HOMARD_YACS_MAX_ELEM" ), bloc, LightApp_Preferences::IntSpin, "HOMARD", "homard_yacs_max_elem" );
setPreferenceProperty( pref, "min", 0 );
setPreferenceProperty( pref, "max", 100000000 );
setPreferenceProperty( pref, "step", 1000 );
- bloc = addPreference( tr( "ADAPT_PREF_YACS_CONVERGENCE" ), adaptTab );
- setPreferenceProperty( bloc, "columns", 1 );
- pref = addPreference( tr( "ADAPT_PREF_YACS_TYPE_TEST" ), bloc, LightApp_Preferences::Selector, "HOMARD", "yacs_type_test" );
+ pref = addPreference( tr( "ADAPT_PREF_HOMARD_YACS_TYPE_CONVERGENCE" ), bloc, LightApp_Preferences::Selector, "HOMARD", "homard_yacs_type_test" );
QStringList aListOfTypeTest;
- aListOfTypeTest << "None";
+ aListOfTypeTest << tr( "ADAPT_PREF_NONE" );
aListOfTypeTest << "VTest > VRef";
aListOfTypeTest << "VTest < VRef";
setPreferenceProperty( pref, "strings", aListOfTypeTest );
+
+ // MG-Adapt
+ bloc = addPreference( tr( "ADAPT_PREF_MG_ADAPT" ), adaptTab );
+ setPreferenceProperty( bloc, "columns", 1 );
+ pref = addPreference( tr( "ADAPT_PREF_MG_ADAPT_FILE_MAILLAGE_OUT" ), bloc, LightApp_Preferences::Bool, "HOMARD", "mg_adapt_file_mesh_out" );
+ pref = addPreference( tr( "ADAPT_PREF_MG_ADAPT_PUBLICATION_MAILLAGE_OUT" ), bloc, LightApp_Preferences::Bool, "HOMARD", "mg_adapt_publish_mesh_out" );
+ pref = addPreference( tr( "ADAPT_PREF_MG_ADAPT_SIZE_MAP" ), bloc, LightApp_Preferences::Selector, "HOMARD", "mg_adapt_size_map" );
+ QStringList aListOfSizeMap;
+ aListOfSizeMap << tr( "ADAPT_PREF_MG_ADAPT_SIZE_MAP_LOCAL" );
+ aListOfSizeMap << tr( "ADAPT_PREF_MG_ADAPT_SIZE_MAP_BACKGROUND" );
+ aListOfSizeMap << tr( "ADAPT_PREF_NONE" );;
+ setPreferenceProperty( pref, "strings", aListOfSizeMap );
+ pref = addPreference( tr( "ADAPT_PREF_MG_ADAPT_TIME_STEP" ), bloc, LightApp_Preferences::Selector, "HOMARD", "mg_adapt_time_step" );
+ QStringList aListOfTimeStep;
+ aListOfTimeStep << tr( "ADAPT_PREF_NONE" );
+ aListOfTimeStep << tr( "ADAPT_PREF_MG_ADAPT_TIME_STEP_LAST" );
+ aListOfTimeStep << tr( "ADAPT_PREF_MG_ADAPT_TIME_STEP_C" );;
+ setPreferenceProperty( pref, "strings", aListOfTimeStep );
// Adaptation - end
}
case SMESHOp::OpComputeSubMesh:
op = new SMESHGUI_ComputeOp();
break;
+ case SMESHOp::OpShowErrors:
+ op = new SMESHGUI_ShowErrorsOp();
+ break;
case SMESHOp::OpPreCompute:
op = new SMESHGUI_PrecomputeOp();
break;