mirror of
https://github.com/OPM/ResInsight.git
synced 2025-02-25 18:55:39 -06:00
#6834 Stimplan Model Plot: add source selector for eclipse case and time step
This commit is contained in:
parent
3b899d4fdb
commit
182b7f546c
@ -1357,6 +1357,18 @@ void RimFractureModel::setMD( double md )
|
||||
updateBarrierProperties();
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
///
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
void RimFractureModel::setEclipseCaseAndTimeStep( RimEclipseCase* eclipseCase, int timeStep )
|
||||
{
|
||||
setEclipseCase( eclipseCase );
|
||||
setTimeStep( timeStep );
|
||||
updateThicknessDirection();
|
||||
updateBarrierProperties();
|
||||
updateViewsAndPlots();
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
///
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
|
@ -89,6 +89,8 @@ public:
|
||||
RimEclipseCase* eclipseCase() const;
|
||||
void setEclipseCase( RimEclipseCase* eclipseCase );
|
||||
|
||||
void setEclipseCaseAndTimeStep( RimEclipseCase* eclipseCase, int timeStep );
|
||||
|
||||
cvf::Vec3d anchorPosition() const;
|
||||
cvf::Vec3d thicknessDirection() const;
|
||||
|
||||
|
@ -20,9 +20,11 @@
|
||||
#include "RiaDefines.h"
|
||||
#include "RiaFractureModelDefines.h"
|
||||
|
||||
#include "RimEclipseCase.h"
|
||||
#include "RimFractureModel.h"
|
||||
#include "RimFractureModelCurve.h"
|
||||
#include "RimFractureModelPropertyCurve.h"
|
||||
#include "RimTools.h"
|
||||
#include "RimWellLogTrack.h"
|
||||
|
||||
#include "cafPdmBase.h"
|
||||
@ -44,6 +46,9 @@ RimFractureModelPlot::RimFractureModelPlot()
|
||||
m_fractureModel.uiCapability()->setUiTreeChildrenHidden( true );
|
||||
m_fractureModel.uiCapability()->setUiHidden( true );
|
||||
|
||||
CAF_PDM_InitScriptableFieldNoDefault( &m_eclipseCase, "EclipseCase", "Case", "", "", "" );
|
||||
CAF_PDM_InitScriptableField( &m_timeStep, "TimeStep", 0, "Time Step", "", "", "" );
|
||||
|
||||
setLegendsVisible( true );
|
||||
setDeletable( true );
|
||||
}
|
||||
@ -54,6 +59,8 @@ RimFractureModelPlot::RimFractureModelPlot()
|
||||
void RimFractureModelPlot::setFractureModel( RimFractureModel* fractureModel )
|
||||
{
|
||||
m_fractureModel = fractureModel;
|
||||
m_eclipseCase = fractureModel->eclipseCase();
|
||||
m_timeStep = fractureModel->timeStep();
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
@ -69,6 +76,9 @@ RimFractureModel* RimFractureModelPlot::fractureModel()
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
void RimFractureModelPlot::defineUiOrdering( QString uiConfigName, caf::PdmUiOrdering& uiOrdering )
|
||||
{
|
||||
uiOrdering.add( &m_eclipseCase );
|
||||
uiOrdering.add( &m_timeStep );
|
||||
|
||||
caf::PdmUiGroup* depthGroup = uiOrdering.addNewGroup( "Depth Axis" );
|
||||
RimDepthTrackPlot::uiOrderingForDepthAxis( uiConfigName, *depthGroup );
|
||||
|
||||
@ -81,6 +91,42 @@ void RimFractureModelPlot::defineUiOrdering( QString uiConfigName, caf::PdmUiOrd
|
||||
uiOrdering.skipRemainingFields( true );
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
///
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
QList<caf::PdmOptionItemInfo>
|
||||
RimFractureModelPlot::calculateValueOptions( const caf::PdmFieldHandle* fieldNeedingOptions, bool* useOptionsOnly )
|
||||
{
|
||||
QList<caf::PdmOptionItemInfo> options;
|
||||
|
||||
if ( fieldNeedingOptions == &m_eclipseCase )
|
||||
{
|
||||
RimTools::eclipseCaseOptionItems( &options );
|
||||
}
|
||||
else if ( fieldNeedingOptions == &m_timeStep )
|
||||
{
|
||||
RimTools::timeStepsForCase( m_eclipseCase(), &options );
|
||||
}
|
||||
|
||||
return options;
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
///
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
void RimFractureModelPlot::fieldChangedByUi( const caf::PdmFieldHandle* changedField,
|
||||
const QVariant& oldValue,
|
||||
const QVariant& newValue )
|
||||
{
|
||||
if ( m_fractureModel )
|
||||
{
|
||||
if ( changedField == &m_eclipseCase || changedField == &m_timeStep )
|
||||
{
|
||||
m_fractureModel->setEclipseCaseAndTimeStep( m_eclipseCase(), m_timeStep() );
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
///
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
|
@ -25,6 +25,7 @@
|
||||
|
||||
class RimFractureModel;
|
||||
class RimWellLogExtractionCurve;
|
||||
class RimEclipseCase;
|
||||
|
||||
class RimFractureModelPlot : public RimDepthTrackPlot
|
||||
{
|
||||
@ -39,7 +40,10 @@ public:
|
||||
protected:
|
||||
RimWellLogExtractionCurve* findCurveByProperty( RiaDefines::CurveProperty curveProperty ) const;
|
||||
|
||||
void defineUiOrdering( QString uiConfigName, caf::PdmUiOrdering& uiOrdering ) override;
|
||||
void defineUiOrdering( QString uiConfigName, caf::PdmUiOrdering& uiOrdering ) override;
|
||||
QList<caf::PdmOptionItemInfo> calculateValueOptions( const caf::PdmFieldHandle* fieldNeedingOptions,
|
||||
bool* useOptionsOnly ) override;
|
||||
void fieldChangedByUi( const caf::PdmFieldHandle* changedField, const QVariant& oldValue, const QVariant& newValue ) override;
|
||||
|
||||
void onLoadDataAndUpdate() override;
|
||||
|
||||
@ -47,4 +51,6 @@ private:
|
||||
void applyDataSource();
|
||||
|
||||
caf::PdmPtrField<RimFractureModel*> m_fractureModel;
|
||||
caf::PdmPtrField<RimEclipseCase*> m_eclipseCase;
|
||||
caf::PdmField<int> m_timeStep;
|
||||
};
|
||||
|
Loading…
Reference in New Issue
Block a user