mirror of
https://github.com/OPM/ResInsight.git
synced 2025-02-25 18:55:39 -06:00
Enable starting FaultRA processing from 3d view (#7801)
This commit is contained in:
@@ -18,38 +18,10 @@
|
||||
|
||||
#include "RicRunBasicFaultReactAssessmentFeature.h"
|
||||
|
||||
#include "RiaApplication.h"
|
||||
#include "RiaEclipseFileNameTools.h"
|
||||
#include "RiaImportEclipseCaseTools.h"
|
||||
#include "RiaPreferencesGeoMech.h"
|
||||
#include "RiaResultNames.h"
|
||||
|
||||
#include "RifFaultRAJsonWriter.h"
|
||||
#include "RifFaultRAXmlWriter.h"
|
||||
|
||||
#include "RimEclipseInputCase.h"
|
||||
#include "RimEclipseResultCase.h"
|
||||
#include "RimEclipseView.h"
|
||||
#include "RimFaultInView.h"
|
||||
#include "RimFaultInViewCollection.h"
|
||||
#include "RimFaultRAPreprocSettings.h"
|
||||
#include "RimFaultRASettings.h"
|
||||
#include "RimGeoMechCase.h"
|
||||
#include "RimProcess.h"
|
||||
#include "RimProject.h"
|
||||
|
||||
#include "Riu3DMainWindowTools.h"
|
||||
#include "RiuFileDialogTools.h"
|
||||
|
||||
#include "cafPdmUiPropertyViewDialog.h"
|
||||
#include "cafProgressInfo.h"
|
||||
#include "cafSelectionManagerTools.h"
|
||||
#include "cafUtils.h"
|
||||
|
||||
#include <QAction>
|
||||
#include <QDebug>
|
||||
#include <QDir>
|
||||
#include <QMessageBox>
|
||||
|
||||
CAF_CMD_SOURCE_INIT( RicRunBasicFaultReactAssessmentFeature, "RicRunBasicFaultReactAssessmentFeature" );
|
||||
|
||||
@@ -72,67 +44,7 @@ bool RicRunBasicFaultReactAssessmentFeature::isCommandEnabled()
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
void RicRunBasicFaultReactAssessmentFeature::onActionTriggered( bool isChecked )
|
||||
{
|
||||
RimFaultInViewCollection* coll = faultCollection();
|
||||
if ( coll == nullptr ) return;
|
||||
|
||||
RimFaultRASettings* fraSettings = coll->faultRASettings();
|
||||
if ( fraSettings == nullptr ) return;
|
||||
|
||||
int faultID = selectedFaultID();
|
||||
caf::ProgressInfo runProgress( 3, "Running Basic Fault RA processing, please wait..." );
|
||||
|
||||
{
|
||||
runProgress.setProgressDescription( "Macris calculate command." );
|
||||
QString paramfilename = fraSettings->basicParameterXMLFilename( faultID );
|
||||
|
||||
RifFaultRAXmlWriter xmlwriter( fraSettings );
|
||||
QString outErrorText;
|
||||
if ( !xmlwriter.writeCalculateFile( paramfilename, faultID, outErrorText ) )
|
||||
{
|
||||
QMessageBox::warning( nullptr,
|
||||
"Fault Reactivation Assessment Processing",
|
||||
"Unable to write parameter file! " + outErrorText );
|
||||
return;
|
||||
}
|
||||
|
||||
addParameterFileForCleanUp( paramfilename );
|
||||
|
||||
// remove any existing database file
|
||||
removeFile( fraSettings->basicMacrisDatabase() );
|
||||
|
||||
// run the java macris program in calculate mode
|
||||
QString command = RiaPreferencesGeoMech::current()->geomechFRAMacrisCommand();
|
||||
QStringList parameters = fraSettings->basicMacrisParameters( faultID );
|
||||
|
||||
RimProcess process;
|
||||
process.setCommand( command );
|
||||
process.setParameters( parameters );
|
||||
if ( !process.execute() )
|
||||
{
|
||||
QMessageBox::critical( nullptr,
|
||||
"Basic Fault Reactivation Assessment Processing",
|
||||
"Failed to run Macris calculate command. Check log window for additional "
|
||||
"information." );
|
||||
cleanUpParameterFiles();
|
||||
return;
|
||||
}
|
||||
|
||||
runProgress.incrementProgress();
|
||||
}
|
||||
|
||||
runProgress.setProgressDescription( "Generating surface results." );
|
||||
|
||||
if ( runPostProcessing( faultID, fraSettings ) )
|
||||
{
|
||||
runProgress.incrementProgress();
|
||||
|
||||
runProgress.setProgressDescription( "Importing surface results." );
|
||||
|
||||
// reload output surfaces
|
||||
reloadSurfaces( fraSettings );
|
||||
}
|
||||
// delete parameter files
|
||||
cleanUpParameterFiles();
|
||||
runBasicProcessing( selectedFaultID() );
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
|
||||
Reference in New Issue
Block a user