Fault Reactivation updates (#10665)

* Support getting pore pressure for all nodes
* Misc fixes and updates in fault reactivation UI
* Disable fault reactivation result unless you load an odb from a valid working folder
This commit is contained in:
jonjenssen
2023-09-27 15:15:17 +02:00
committed by GitHub
parent be0d83e41e
commit 0ccddcb836
14 changed files with 357 additions and 10 deletions

View File

@@ -101,6 +101,14 @@ RimGeoMechFaultReactivationResult::~RimGeoMechFaultReactivationResult()
{
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
bool RimGeoMechFaultReactivationResult::isValid() const
{
return m_bHaveValidData;
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
@@ -109,7 +117,9 @@ void RimGeoMechFaultReactivationResult::onLoadDataAndUpdate()
auto geomCase = geoMechCase();
if ( geomCase == nullptr ) return;
auto filename = geomCase->gridFileName();
auto filename = geomCase->gridFileName();
if ( !filename.toLower().endsWith( ".odb" ) ) return;
QFileInfo fi( filename );
auto folder = fi.path();
auto basename = fi.baseName();

View File

@@ -47,6 +47,8 @@ public:
void onLoadDataAndUpdate();
bool isValid() const;
private:
QList<caf::PdmOptionItemInfo> calculateValueOptions( const caf::PdmFieldHandle* fieldNeedingOptions ) override;
void defineUiOrdering( QString uiConfigName, caf::PdmUiOrdering& uiOrdering ) override;

View File

@@ -201,7 +201,13 @@ void RimGeoMechView::onLoadDataAndUpdate()
if ( m_partsCollection ) m_partsCollection->syncWithCase( m_geomechCase );
if ( m_faultReactivationResult ) m_faultReactivationResult->onLoadDataAndUpdate();
if ( m_faultReactivationResult )
{
if ( m_geomechCase->gridFileName().toLower().endsWith( ".odb" ) )
{
m_faultReactivationResult->onLoadDataAndUpdate();
}
}
scheduleCreateDisplayModelAndRedraw();
@@ -1025,7 +1031,11 @@ void RimGeoMechView::defineUiTreeOrdering( caf::PdmUiTreeOrdering& uiTreeOrderin
uiTreeOrdering.add( m_tensorResults() );
uiTreeOrdering.add( m_cellFilterCollection() );
uiTreeOrdering.add( m_propertyFilterCollection() );
uiTreeOrdering.add( m_faultReactivationResult() );
if ( ( m_faultReactivationResult() != nullptr ) && ( m_faultReactivationResult->isValid() ) )
{
uiTreeOrdering.add( m_faultReactivationResult() );
}
addRequiredUiTreeObjects( uiTreeOrdering );