#2153 Curve Creator : Clear results before trying to assign values from curve merging

This commit is contained in:
Magne Sjaastad
2017-11-21 09:19:39 +01:00
parent 9d5bf4ce5e
commit 4d6d48dc18
2 changed files with 39 additions and 10 deletions

View File

@@ -291,21 +291,27 @@ bool RimSummaryCalculation::calculate()
if (evaluatedOk)
{
size_t firstValidTimeStep = timeHistoryCurveMerger.validIntervalsForAllTimeSteps().front().first;
size_t lastValidTimeStep = timeHistoryCurveMerger.validIntervalsForAllTimeSteps().back().second + 1;
m_timesteps.v().clear();
m_calculatedValues.v().clear();
if (lastValidTimeStep > firstValidTimeStep &&
lastValidTimeStep <= timeHistoryCurveMerger.allTimeSteps().size())
if (timeHistoryCurveMerger.validIntervalsForAllTimeSteps().size() > 0)
{
std::vector<time_t> validTimeSteps(timeHistoryCurveMerger.allTimeSteps().begin() + firstValidTimeStep,
timeHistoryCurveMerger.allTimeSteps().begin() + lastValidTimeStep);
size_t firstValidTimeStep = timeHistoryCurveMerger.validIntervalsForAllTimeSteps().front().first;
size_t lastValidTimeStep = timeHistoryCurveMerger.validIntervalsForAllTimeSteps().back().second + 1;
if (lastValidTimeStep > firstValidTimeStep &&
lastValidTimeStep <= timeHistoryCurveMerger.allTimeSteps().size())
{
std::vector<time_t> validTimeSteps(timeHistoryCurveMerger.allTimeSteps().begin() + firstValidTimeStep,
timeHistoryCurveMerger.allTimeSteps().begin() + lastValidTimeStep);
std::vector<double> validValues(resultValues.begin() + firstValidTimeStep,
resultValues.begin() + lastValidTimeStep);
std::vector<double> validValues(resultValues.begin() + firstValidTimeStep,
resultValues.begin() + lastValidTimeStep);
m_timesteps = validTimeSteps;
m_calculatedValues = validValues;
m_timesteps = validTimeSteps;
m_calculatedValues = validValues;
}
}
m_isDirty = false;