#5609 Explicit selection of ensemble members for Analysis Plots

This commit is contained in:
Jacob Støren
2020-03-03 09:49:54 +01:00
parent 10885fa7f4
commit bb58507559
5 changed files with 61 additions and 6 deletions

View File

@@ -224,8 +224,10 @@ void RimAnalysisPlot::fieldChangedByUi( const caf::PdmFieldHandle* changedField,
// Do select variables
RiuSummaryVectorSelectionDialog dlg( nullptr );
dlg.setCurveSelection( this->curveDefinitions() );
dlg.enableMultiSelect( true );
dlg.enableIndividualEnsembleCaseSelection( true );
dlg.setCurveSelection( this->curveDefinitions() );
dlg.setCaseAndAddress( nullptr, RifEclipseSummaryAddress() );
if ( dlg.exec() == QDialog::Accepted )
@@ -751,6 +753,9 @@ void RimAnalysisPlot::addDataToChartBuilder( RiuGroupedBarChartBuilder& chartBui
{
RiaSummaryCurveDefinition orgBarDataEntry = dataEntry->curveDefinition();
// Unpack ensemble curves and make one curve definition for each individual curve.
// Store both ensemble and summary case in the definition
std::vector<RiaSummaryCurveDefinition> barDataDefinitions;
if ( orgBarDataEntry.isEnsembleCurve() )
@@ -764,7 +769,16 @@ void RimAnalysisPlot::addDataToChartBuilder( RiuGroupedBarChartBuilder& chartBui
}
else
{
barDataDefinitions.push_back( orgBarDataEntry );
if ( orgBarDataEntry.summaryCase() && orgBarDataEntry.summaryCase()->ensemble() )
{
barDataDefinitions.push_back( RiaSummaryCurveDefinition( orgBarDataEntry.summaryCase(),
orgBarDataEntry.summaryAddress(),
orgBarDataEntry.summaryCase()->ensemble() ) );
}
else
{
barDataDefinitions.push_back( orgBarDataEntry );
}
}
for ( const RiaSummaryCurveDefinition& curveDef : barDataDefinitions )