0021208: Performance issue when loading SMESH with an hdf file containing a big mesh

addPreference( tr( "PREF_FORGET_MESH_AT_HYP_MODIF" ), loadGroup, LightApp_Preferences::Bool,
This commit is contained in:
eap 2012-02-24 10:55:52 +00:00
parent d2218320ff
commit 582347efc7

View File

@ -1713,11 +1713,14 @@ LightApp_Module( "SMESH" )
myComponentSMESH->SetBoundaryBoxSegmentation( nbSeg ); myComponentSMESH->SetBoundaryBoxSegmentation( nbSeg );
nbSeg = aResourceMgr->integerValue( "SMESH", "nb_segments_per_edge", 15 ); nbSeg = aResourceMgr->integerValue( "SMESH", "nb_segments_per_edge", 15 );
myComponentSMESH->SetDefaultNbSegments( nbSeg ); myComponentSMESH->SetDefaultNbSegments( nbSeg );
if ( aResourceMgr->hasValue( "SMESH", "historical_python_dump" ))
{ const char* options[] = { "historical_python_dump", "forget_mesh_on_hyp_modif" };
QString val = aResourceMgr->stringValue( "SMESH", "historical_python_dump" ); for ( size_t i = 0; i < sizeof(options)/sizeof(char*); ++i )
myComponentSMESH->SetOption( "historical_python_dump", val.toLatin1().constData() ); if ( aResourceMgr->hasValue( "SMESH", options[i] ))
} {
QString val = aResourceMgr->stringValue( "SMESH", options[i] );
myComponentSMESH->SetOption( options[i], val.toLatin1().constData() );
}
} }
myActiveDialogBox = 0; myActiveDialogBox = 0;
@ -4579,6 +4582,11 @@ void SMESHGUI::createPreferences()
setPreferenceProperty( nbSeg, "min", 1 ); setPreferenceProperty( nbSeg, "min", 1 );
setPreferenceProperty( nbSeg, "max", 10000000 ); setPreferenceProperty( nbSeg, "max", 10000000 );
int loadGroup = addPreference( tr( "SMESH_PREF_MESH_LOADING" ), genTab );
addPreference( tr( "PREF_FORGET_MESH_AT_HYP_MODIF" ), loadGroup, LightApp_Preferences::Bool,
"SMESH", "forget_mesh_on_hyp_modif" );
// Quantities with individual precision settings // Quantities with individual precision settings
int precGroup = addPreference( tr( "SMESH_PREF_GROUP_PRECISION" ), genTab ); int precGroup = addPreference( tr( "SMESH_PREF_GROUP_PRECISION" ), genTab );
setPreferenceProperty( precGroup, "columns", 2 ); setPreferenceProperty( precGroup, "columns", 2 );
@ -4860,9 +4868,10 @@ void SMESHGUI::preferencesChanged( const QString& sect, const QString& name )
int nbSeg = aResourceMgr->integerValue( "SMESH", "nb_segments_per_edge", 15 ); int nbSeg = aResourceMgr->integerValue( "SMESH", "nb_segments_per_edge", 15 );
myComponentSMESH->SetDefaultNbSegments( nbSeg ); myComponentSMESH->SetDefaultNbSegments( nbSeg );
} }
else if ( name == "historical_python_dump" ) { else if ( name == "historical_python_dump" ||
QString val = aResourceMgr->stringValue( "SMESH", "historical_python_dump" ); name == "forget_mesh_on_hyp_modif") {
myComponentSMESH->SetOption( "historical_python_dump", val.toLatin1().constData() ); QString val = aResourceMgr->stringValue( "SMESH", name );
myComponentSMESH->SetOption( name.toLatin1().constData(), val.toLatin1().constData() );
} }
if(aWarning.size() != 0){ if(aWarning.size() != 0){