mirror of
https://github.com/OPM/ResInsight.git
synced 2026-10-14 17:32:13 -05:00
#7966 Ensemble Well Log: depth equalization and filter by curve set options in well log plot (#8001)
This commit is contained in:
1 parent
785ee51099
commit
1df25ed71c
7 files changed
+90
-18
No files matched your search
@@ -20,6 +20,7 @@
|
||||
#include "RimDepthTrackPlot.h"
|
||||
|
||||
#include "RiaGuiApplication.h"
|
||||
#include "RiaOptionItemFactory.h"
|
||||
#include "RiaPreferences.h"
|
||||
|
||||
#include "RigWellLogCurveData.h"
|
||||
@@ -28,7 +29,10 @@
|
||||
#include "RimEclipseCase.h"
|
||||
#include "RimEclipseCaseCollection.h"
|
||||
#include "RimEclipseResultCase.h"
|
||||
#include "RimEnsembleCurveSet.h"
|
||||
#include "RimEnsembleWellLogCurveSet.h"
|
||||
#include "RimGeoMechCase.h"
|
||||
#include "RimMainPlotCollection.h"
|
||||
#include "RimOilField.h"
|
||||
#include "RimPlot.h"
|
||||
#include "RimProject.h"
|
||||
@@ -118,6 +122,9 @@ RimDepthTrackPlot::RimDepthTrackPlot()
|
||||
m_nameConfig.uiCapability()->setUiTreeChildrenHidden( true );
|
||||
m_nameConfig = new RimWellLogPlotNameConfig();
|
||||
|
||||
CAF_PDM_InitFieldNoDefault( &m_ensembleCurveSet, "FilterEnsembleCurveSet", "Filter by Ensemble Curve Set", "", "", "" );
|
||||
CAF_PDM_InitFieldNoDefault( &m_depthEqualization, "DepthEqualization", "Depth Equalization", "", "", "" );
|
||||
|
||||
CAF_PDM_InitFieldNoDefault( &m_plots, "Tracks", "", "", "", "" );
|
||||
m_plots.uiCapability()->setUiHidden( true );
|
||||
auto reorderability = caf::PdmFieldReorderCapability::addToField( &m_plots );
|
||||
@@ -830,6 +837,26 @@ void RimDepthTrackPlot::fieldChangedByUi( const caf::PdmFieldHandle* changedFiel
|
||||
{
|
||||
performAutoNameUpdate();
|
||||
}
|
||||
else if ( changedField == &m_depthEqualization )
|
||||
{
|
||||
std::vector<RimEnsembleWellLogCurveSet*> ensembleWellLogCurveSets;
|
||||
descendantsOfType( ensembleWellLogCurveSets );
|
||||
for ( auto ensembleWellLogCurveSet : ensembleWellLogCurveSets )
|
||||
{
|
||||
ensembleWellLogCurveSet->setDepthEqualization( m_depthEqualization() );
|
||||
ensembleWellLogCurveSet->loadDataAndUpdate( true );
|
||||
}
|
||||
}
|
||||
else if ( changedField == &m_ensembleCurveSet )
|
||||
{
|
||||
std::vector<RimEnsembleWellLogCurveSet*> ensembleWellLogCurveSets;
|
||||
descendantsOfType( ensembleWellLogCurveSets );
|
||||
for ( auto ensembleWellLogCurveSet : ensembleWellLogCurveSets )
|
||||
{
|
||||
ensembleWellLogCurveSet->setFilterByEnsembleCurveSet( m_ensembleCurveSet() );
|
||||
ensembleWellLogCurveSet->loadDataAndUpdate( true );
|
||||
}
|
||||
}
|
||||
|
||||
updateConnectedEditors();
|
||||
}
|
||||
@@ -856,6 +883,15 @@ void RimDepthTrackPlot::defineUiOrdering( QString uiConfigName, caf::PdmUiOrderi
|
||||
plotLayoutGroup->add( &m_axisTitleFontSize );
|
||||
plotLayoutGroup->add( &m_axisValueFontSize );
|
||||
|
||||
std::vector<RimEnsembleWellLogCurveSet*> ensembleWellLogCurveSets;
|
||||
descendantsOfType( ensembleWellLogCurveSets );
|
||||
if ( !ensembleWellLogCurveSets.empty() )
|
||||
{
|
||||
caf::PdmUiGroup* ensembleWellLogGroup = uiOrdering.addNewGroup( "Ensemble Well Log" );
|
||||
ensembleWellLogGroup->add( &m_depthEqualization );
|
||||
ensembleWellLogGroup->add( &m_ensembleCurveSet );
|
||||
}
|
||||
|
||||
uiOrdering.skipRemainingFields( true );
|
||||
}
|
||||
|
||||
@@ -893,6 +929,10 @@ QList<caf::PdmOptionItemInfo> RimDepthTrackPlot::calculateValueOptions( const ca
|
||||
{
|
||||
options = caf::FontTools::relativeSizeValueOptions( RiaPreferences::current()->defaultPlotFontSize() );
|
||||
}
|
||||
else if ( fieldNeedingOptions == &m_ensembleCurveSet )
|
||||
{
|
||||
RiaOptionItemFactory::appendOptionItemsForEnsembleCurveSets( &options );
|
||||
}
|
||||
|
||||
( *useOptionsOnly ) = true;
|
||||
return options;
|
||||
|
||||
Reference in new issue
Block a user