#4038 2D plot Source data stepping re-set curve interpolation

This commit is contained in:
Magne Sjaastad
2019-02-07 08:30:55 +01:00
parent 1717a5bf30
commit f4e0a154ee
7 changed files with 26 additions and 16 deletions

View File

@@ -977,7 +977,7 @@ void RimEnsembleCurveSet::updateEnsembleCurves(const std::vector<RimSummaryCase*
{
RimSummaryCurve* curve = new RimSummaryCurve();
curve->setSummaryCaseY(sumCase);
curve->setSummaryAddressY(addr->address());
curve->setSummaryAddressYAndApplyInterpolation(addr->address());
curve->setLeftOrRightAxisY(m_plotAxis());
addCurve(curve);
@@ -1069,7 +1069,7 @@ void RimEnsembleCurveSet::updateStatisticsCurves(const std::vector<RimSummaryCas
}
curve->setLineStyle(RiuQwtPlotCurve::STYLE_SOLID);
curve->setSummaryCaseY(m_ensembleStatCase.get());
curve->setSummaryAddressY(address);
curve->setSummaryAddressYAndApplyInterpolation(address);
curve->setLeftOrRightAxisY(m_plotAxis());
curve->updateCurveVisibility(false);

View File

@@ -203,6 +203,16 @@ RifEclipseSummaryAddress RimSummaryCurve::summaryAddressY() const
return m_yValuesCurveVariable->address();
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
void RimSummaryCurve::setSummaryAddressYAndApplyInterpolation(const RifEclipseSummaryAddress& address)
{
setSummaryAddressY(address);
calculateCurveInterpolationFromAddress();
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
@@ -216,8 +226,6 @@ void RimSummaryCurve::setSummaryAddressY(const RifEclipseSummaryAddress& address
m_yValuesCurveVariable->setAddress(address);
m_yValuesSummaryFilter->updateFromAddress(address);
calculateCurveInterpolationFromAddress();
}
//--------------------------------------------------------------------------------------------------

View File

@@ -54,7 +54,9 @@ public:
// Y Axis functions
void setSummaryCaseY(RimSummaryCase* sumCase);
RimSummaryCase* summaryCaseY() const;
void setSummaryAddressYAndApplyInterpolation(const RifEclipseSummaryAddress& address);
void setSummaryAddressY(const RifEclipseSummaryAddress& address);
RifEclipseSummaryAddress summaryAddressY() const;
std::string unitNameY() const;
std::vector<double> valuesY() const;
@@ -76,7 +78,7 @@ public:
void updateQwtPlotAxis();
void applyCurveAutoNameSettings(const RimSummaryCurveAutoName& autoNameSettings);
QString curveExportDescription(const RifEclipseSummaryAddress& address = RifEclipseSummaryAddress()) const override;
QString curveExportDescription(const RifEclipseSummaryAddress& address = RifEclipseSummaryAddress()) const override;
void forceUpdateCurveAppearanceFromCaseType();
void markCachedDataForPurge();
@@ -97,11 +99,11 @@ protected:
void defineUiTreeOrdering(caf::PdmUiTreeOrdering& uiTreeOrdering, QString uiConfigName = "") override;
private:
RifSummaryReaderInterface* valuesSummaryReaderX() const;
RifSummaryReaderInterface* valuesSummaryReaderY() const;
const std::vector<time_t>& timeStepsX() const;
RifSummaryReaderInterface* valuesSummaryReaderX() const;
RifSummaryReaderInterface* valuesSummaryReaderY() const;
const std::vector<time_t>& timeStepsX() const;
void calculateCurveInterpolationFromAddress();
void calculateCurveInterpolationFromAddress();
// Overridden PDM methods
void fieldChangedByUi(const caf::PdmFieldHandle* changedField, const QVariant& oldValue, const QVariant& newValue) override;
@@ -109,9 +111,9 @@ private:
void defineUiOrdering(QString uiConfigName, caf::PdmUiOrdering& uiOrdering) override;
void defineEditorAttribute(const caf::PdmFieldHandle* field, QString uiConfigName, caf::PdmUiEditorAttribute* attribute) override;
static void appendOptionItemsForSummaryAddresses(QList<caf::PdmOptionItemInfo>* options,
RimSummaryCase* summaryCase,
RimSummaryFilter* summaryFilter);
static void appendOptionItemsForSummaryAddresses(QList<caf::PdmOptionItemInfo>* options,
RimSummaryCase* summaryCase,
RimSummaryFilter* summaryFilter);
private:
// Y values