#6134 Fracture Model: Add menu item to delete a fracture model.

This commit is contained in:
Kristian Bendiksen 2020-09-11 10:37:47 +02:00
parent fd91eaf2be
commit f83ca79a87
5 changed files with 22 additions and 4 deletions

View File

@ -47,7 +47,9 @@
#include "RimReservoirCellResultsStorage.h" #include "RimReservoirCellResultsStorage.h"
#include "RimStimPlanColors.h" #include "RimStimPlanColors.h"
#include "RimStimPlanFractureTemplate.h" #include "RimStimPlanFractureTemplate.h"
#include "RimTools.h"
#include "RimWellPath.h" #include "RimWellPath.h"
#include "RimWellPathCollection.h"
#include "RimWellPathGeometryDef.h" #include "RimWellPathGeometryDef.h"
#include "RimWellPathTarget.h" #include "RimWellPathTarget.h"
@ -241,6 +243,8 @@ RimFractureModel::RimFractureModel()
CAF_PDM_InitScriptableFieldNoDefault( &m_elasticProperties, "ElasticProperties", "Elastic Properties", "", "", "" ); CAF_PDM_InitScriptableFieldNoDefault( &m_elasticProperties, "ElasticProperties", "Elastic Properties", "", "", "" );
m_elasticProperties.uiCapability()->setUiHidden( true ); m_elasticProperties.uiCapability()->setUiHidden( true );
m_elasticProperties.uiCapability()->setUiTreeHidden( true ); m_elasticProperties.uiCapability()->setUiTreeHidden( true );
setDeletable( true );
} }
//-------------------------------------------------------------------------------------------------- //--------------------------------------------------------------------------------------------------
@ -248,6 +252,17 @@ RimFractureModel::RimFractureModel()
//-------------------------------------------------------------------------------------------------- //--------------------------------------------------------------------------------------------------
RimFractureModel::~RimFractureModel() RimFractureModel::~RimFractureModel()
{ {
RimWellPath* wellPath = m_thicknessDirectionWellPath.value();
RimWellPathCollection* wellPathCollection = RimTools::wellPathCollection();
if ( wellPath && wellPathCollection )
{
wellPathCollection->removeWellPath( wellPath );
delete wellPath;
wellPathCollection->uiCapability()->updateConnectedEditors();
wellPathCollection->scheduleRedrawAffectedViews();
}
} }
//-------------------------------------------------------------------------------------------------- //--------------------------------------------------------------------------------------------------

View File

@ -132,7 +132,7 @@ void RimElasticPropertiesCurve::performDataExtraction( bool* isUsingPseudoLength
*isUsingPseudoLength = false; *isUsingPseudoLength = false;
RimEclipseCase* eclipseCase = dynamic_cast<RimEclipseCase*>( m_case.value() ); RimEclipseCase* eclipseCase = dynamic_cast<RimEclipseCase*>( m_case.value() );
if ( eclipseCase ) if ( eclipseCase && m_fractureModel )
{ {
RigEclipseWellLogExtractor eclExtractor( eclipseCase->eclipseCaseData(), RigEclipseWellLogExtractor eclExtractor( eclipseCase->eclipseCaseData(),
m_fractureModel->thicknessDirectionWellPath()->wellPathGeometry(), m_fractureModel->thicknessDirectionWellPath()->wellPathGeometry(),

View File

@ -179,7 +179,7 @@ void RimFractureModelCurve::performDataExtraction( bool* isUsingPseudoLength )
*isUsingPseudoLength = false; *isUsingPseudoLength = false;
RimEclipseCase* eclipseCase = dynamic_cast<RimEclipseCase*>( m_case.value() ); RimEclipseCase* eclipseCase = dynamic_cast<RimEclipseCase*>( m_case.value() );
if ( eclipseCase ) if ( eclipseCase && m_fractureModel )
{ {
RigEclipseWellLogExtractor eclExtractor( eclipseCase->eclipseCaseData(), RigEclipseWellLogExtractor eclExtractor( eclipseCase->eclipseCaseData(),
m_fractureModel->thicknessDirectionWellPath()->wellPathGeometry(), m_fractureModel->thicknessDirectionWellPath()->wellPathGeometry(),

View File

@ -110,7 +110,7 @@ void RimFractureModelStressCurve::performDataExtraction( bool* isUsingPseudoLeng
// Extract porosity data: get the porosity values from parent // Extract porosity data: get the porosity values from parent
RimFractureModelPlot* fractureModelPlot; RimFractureModelPlot* fractureModelPlot;
firstAncestorOrThisOfType( fractureModelPlot ); firstAncestorOrThisOfType( fractureModelPlot );
if ( !fractureModelPlot ) if ( !fractureModelPlot || !m_fractureModel )
{ {
RiaLogging::error( QString( "No fracture model plot found." ) ); RiaLogging::error( QString( "No fracture model plot found." ) );
return; return;
@ -196,6 +196,9 @@ QString RimFractureModelStressCurve::createCurveAutoName()
return caf::AppEnum<RiaDefines::CurveProperty>::uiText( m_curveProperty() ); return caf::AppEnum<RiaDefines::CurveProperty>::uiText( m_curveProperty() );
} }
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
void RimFractureModelStressCurve::addDatapointsForBottomOfLayers( std::vector<double>& tvDepthValues, void RimFractureModelStressCurve::addDatapointsForBottomOfLayers( std::vector<double>& tvDepthValues,
std::vector<double>& stress, std::vector<double>& stress,
const std::vector<double>& stressGradients ) const std::vector<double>& stressGradients )

View File

@ -107,7 +107,7 @@ void RimLayerCurve::performDataExtraction( bool* isUsingPseudoLength )
*isUsingPseudoLength = false; *isUsingPseudoLength = false;
RimEclipseCase* eclipseCase = dynamic_cast<RimEclipseCase*>( m_case.value() ); RimEclipseCase* eclipseCase = dynamic_cast<RimEclipseCase*>( m_case.value() );
if ( eclipseCase ) if ( eclipseCase && m_fractureModel )
{ {
RigEclipseWellLogExtractor eclExtractor( eclipseCase->eclipseCaseData(), RigEclipseWellLogExtractor eclExtractor( eclipseCase->eclipseCaseData(),
m_fractureModel->thicknessDirectionWellPath()->wellPathGeometry(), m_fractureModel->thicknessDirectionWellPath()->wellPathGeometry(),