mirror of
https://github.com/OPM/ResInsight.git
synced 2025-02-25 18:55:39 -06:00
Contour Map: Add optional value filtering
* #12071 Contour Map: Add optional value filtering * Move management of min/max values to common base class
This commit is contained in:
@@ -114,11 +114,11 @@ void RimEclipseContourMapProjection::updateLegend()
|
||||
{
|
||||
RimEclipseCellColors* cellColors = view()->cellResult();
|
||||
|
||||
auto [minValAllTimeSteps, maxValAllTimeSteps] = minmaxValuesAllTimeSteps();
|
||||
|
||||
double minVal = m_contourMapProjection ? m_contourMapProjection->minValue() : std::numeric_limits<double>::infinity();
|
||||
double maxVal = m_contourMapProjection ? m_contourMapProjection->maxValue() : -std::numeric_limits<double>::infinity();
|
||||
|
||||
auto [minValAllTimeSteps, maxValAllTimeSteps] = minmaxValuesAllTimeSteps();
|
||||
|
||||
legendConfig()->setAutomaticRanges( minValAllTimeSteps, maxValAllTimeSteps, minVal, maxVal );
|
||||
|
||||
if ( isColumnResult() )
|
||||
@@ -361,19 +361,17 @@ void RimEclipseContourMapProjection::initAfterRead()
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
///
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
std::pair<double, double> RimEclipseContourMapProjection::minmaxValuesAllTimeSteps()
|
||||
std::pair<double, double> RimEclipseContourMapProjection::computeMinMaxValuesAllTimeSteps()
|
||||
{
|
||||
if ( !resultRangeIsValid() )
|
||||
{
|
||||
clearTimeStepRange();
|
||||
double minimum = std::numeric_limits<double>::infinity();
|
||||
double maximum = -std::numeric_limits<double>::infinity();
|
||||
|
||||
int timeStepCount = std::max( static_cast<int>( eclipseCase()->timeStepStrings().size() ), 1 );
|
||||
for ( int i = 0; i < (int)timeStepCount; ++i )
|
||||
{
|
||||
std::vector<double> aggregatedResults = generateResults( i );
|
||||
m_minResultAllTimeSteps = std::min( m_minResultAllTimeSteps, RigContourMapProjection::minValue( aggregatedResults ) );
|
||||
m_maxResultAllTimeSteps = std::max( m_maxResultAllTimeSteps, RigContourMapProjection::maxValue( aggregatedResults ) );
|
||||
}
|
||||
int timeStepCount = std::max( static_cast<int>( eclipseCase()->timeStepStrings().size() ), 1 );
|
||||
for ( int i = 0; i < (int)timeStepCount; ++i )
|
||||
{
|
||||
std::vector<double> aggregatedResults = generateResults( i );
|
||||
minimum = std::min( minimum, RigContourMapProjection::minValue( aggregatedResults ) );
|
||||
maximum = std::max( maximum, RigContourMapProjection::maxValue( aggregatedResults ) );
|
||||
}
|
||||
return std::make_pair( m_minResultAllTimeSteps, m_maxResultAllTimeSteps );
|
||||
return std::make_pair( minimum, maximum );
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user