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:
*
*/
//=============================================================================
-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;
}
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;