mirror of
https://github.com/OPM/ResInsight.git
synced 2025-02-25 18:55:39 -06:00
#1999 Curve calc. Curve creator now uses CurveDefSelection component
This commit is contained in:
@@ -19,6 +19,7 @@
|
||||
#include "RimSummaryCurveAppearanceCalculator.h"
|
||||
|
||||
#include "RiaColorTables.h"
|
||||
#include "RiaSummaryCurveDefinition.h"
|
||||
|
||||
#include "RimSummaryCurve.h"
|
||||
#include "RimSummaryCase.h"
|
||||
@@ -45,21 +46,21 @@ void caf::AppEnum< RimSummaryCurveAppearanceCalculator::CurveAppearanceType >::s
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
///
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
RimSummaryCurveAppearanceCalculator::RimSummaryCurveAppearanceCalculator(const std::set<std::pair<RimSummaryCase*, RifEclipseSummaryAddress> >& curveDefinitions, const std::set<std::string> allSummaryCaseNames, const std::set<std::string> allSummaryWellNames)
|
||||
RimSummaryCurveAppearanceCalculator::RimSummaryCurveAppearanceCalculator(const std::set<RiaSummaryCurveDefinition>& curveDefinitions, const std::set<std::string> allSummaryCaseNames, const std::set<std::string> allSummaryWellNames)
|
||||
{
|
||||
m_allSummaryCaseNames = allSummaryCaseNames;
|
||||
m_allSummaryWellNames = allSummaryWellNames;
|
||||
|
||||
for(const std::pair<RimSummaryCase*, RifEclipseSummaryAddress>& curveDef : curveDefinitions)
|
||||
for(const RiaSummaryCurveDefinition& curveDef : curveDefinitions)
|
||||
{
|
||||
if(curveDef.first) m_caseToAppearanceIdxMap[curveDef.first] = -1;
|
||||
if(!curveDef.second.wellName().empty()) m_welToAppearanceIdxMap[curveDef.second.wellName()] = -1;
|
||||
if(!curveDef.second.wellGroupName().empty()) m_grpToAppearanceIdxMap[curveDef.second.wellGroupName()] = -1;
|
||||
if(!(curveDef.second.regionNumber() == -1)) m_regToAppearanceIdxMap[curveDef.second.regionNumber()] = -1;
|
||||
if(curveDef.summaryCase()) m_caseToAppearanceIdxMap[curveDef.summaryCase()] = -1;
|
||||
if(!curveDef.summaryAddress().wellName().empty()) m_welToAppearanceIdxMap[curveDef.summaryAddress().wellName()] = -1;
|
||||
if(!curveDef.summaryAddress().wellGroupName().empty()) m_grpToAppearanceIdxMap[curveDef.summaryAddress().wellGroupName()] = -1;
|
||||
if(!(curveDef.summaryAddress().regionNumber() == -1)) m_regToAppearanceIdxMap[curveDef.summaryAddress().regionNumber()] = -1;
|
||||
|
||||
if(!curveDef.second.quantityName().empty())
|
||||
if(!curveDef.summaryAddress().quantityName().empty())
|
||||
{
|
||||
std::string varname = curveDef.second.quantityName();
|
||||
std::string varname = curveDef.summaryAddress().quantityName();
|
||||
m_varToAppearanceIdxMap[varname] = -1;
|
||||
|
||||
// Indexes for sub color ranges
|
||||
|
||||
@@ -27,11 +27,12 @@
|
||||
class RimSummaryCurve;
|
||||
class RimSummaryCase;
|
||||
class RifEclipseSummaryAddress;
|
||||
class RiaSummaryCurveDefinition;
|
||||
|
||||
class RimSummaryCurveAppearanceCalculator
|
||||
{
|
||||
public:
|
||||
explicit RimSummaryCurveAppearanceCalculator(const std::set<std::pair<RimSummaryCase*, RifEclipseSummaryAddress> >& curveDefinitions,
|
||||
explicit RimSummaryCurveAppearanceCalculator(const std::set<RiaSummaryCurveDefinition>& curveDefinitions,
|
||||
const std::set<std::string> allSummaryCaseNames,
|
||||
const std::set<std::string> allSummaryWellNames);
|
||||
enum CurveAppearanceType
|
||||
|
||||
@@ -19,6 +19,7 @@
|
||||
#include "RimSummaryCurveFilter.h"
|
||||
|
||||
#include "RiaApplication.h"
|
||||
#include "RiaSummaryCurveDefinition.h"
|
||||
|
||||
#include "RifReaderEclipseSummary.h"
|
||||
|
||||
@@ -140,7 +141,7 @@ void RimSummaryCurveFilter::createDefaultCurves(RimSummaryCase* summaryCase, con
|
||||
|
||||
m_summaryFilter->setCompleteVarStringFilter(defaultCurveStringFilter);
|
||||
|
||||
std::set<std::pair<RimSummaryCase*, RifEclipseSummaryAddress> > newCurveDefinitions;
|
||||
std::set<RiaSummaryCurveDefinition> newCurveDefinitions;
|
||||
|
||||
createSetOfCasesAndResultAdresses(selectedCases, *m_summaryFilter, &newCurveDefinitions);
|
||||
|
||||
@@ -355,7 +356,7 @@ void RimSummaryCurveFilter::syncCurvesFromUiSelection()
|
||||
{
|
||||
// Create a search map containing whats supposed to be curves
|
||||
|
||||
std::set<std::pair<RimSummaryCase*, RifEclipseSummaryAddress> > newCurveDefinitions;
|
||||
std::set<RiaSummaryCurveDefinition> newCurveDefinitions;
|
||||
|
||||
// Populate the newCurveDefinitions from the Gui
|
||||
|
||||
@@ -372,7 +373,7 @@ void RimSummaryCurveFilter::syncCurvesFromUiSelection()
|
||||
if(!reader->hasAddress(addr)) continue;
|
||||
if (addrUnion.count(addr) == 0 ) continue; // Wash the possible "old" ui selection with new filter
|
||||
|
||||
newCurveDefinitions.insert(std::make_pair(currentCase, addr));
|
||||
newCurveDefinitions.insert(RiaSummaryCurveDefinition(currentCase, addr));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -522,7 +523,7 @@ void RimSummaryCurveFilter::removeCurvesAssosiatedWithCase(RimSummaryCase* summa
|
||||
void RimSummaryCurveFilter::createSetOfCasesAndResultAdresses(
|
||||
const std::vector<RimSummaryCase*>& cases,
|
||||
const RimSummaryFilter& filter,
|
||||
std::set<std::pair<RimSummaryCase*, RifEclipseSummaryAddress> >* curveDefinitions) const
|
||||
std::set<RiaSummaryCurveDefinition>* curveDefinitions) const
|
||||
{
|
||||
for (RimSummaryCase* currentCase : cases)
|
||||
{
|
||||
@@ -536,7 +537,7 @@ void RimSummaryCurveFilter::createSetOfCasesAndResultAdresses(
|
||||
{
|
||||
if (!filter.isIncludedByFilter(allAddresses[i])) continue;
|
||||
|
||||
curveDefinitions->insert(std::make_pair(currentCase, allAddresses[i]));
|
||||
curveDefinitions->insert(RiaSummaryCurveDefinition(currentCase, allAddresses[i]));
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -545,7 +546,7 @@ void RimSummaryCurveFilter::createSetOfCasesAndResultAdresses(
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
///
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
void RimSummaryCurveFilter::createCurvesFromCurveDefinitions(const std::set<std::pair<RimSummaryCase*, RifEclipseSummaryAddress> >& curveDefinitions)
|
||||
void RimSummaryCurveFilter::createCurvesFromCurveDefinitions(const std::set<RiaSummaryCurveDefinition>& curveDefinitions)
|
||||
{
|
||||
RimSummaryCase* prevCase = nullptr;
|
||||
RimPlotCurve::LineStyleEnum lineStyle = RimPlotCurve::STYLE_SOLID;
|
||||
@@ -582,12 +583,12 @@ void RimSummaryCurveFilter::createCurvesFromCurveDefinitions(const std::set<std:
|
||||
|
||||
for (auto& caseAddrPair : curveDefinitions)
|
||||
{
|
||||
RimSummaryCase* currentCase = caseAddrPair.first;
|
||||
RimSummaryCase* currentCase = caseAddrPair.summaryCase();
|
||||
|
||||
RimSummaryCurve* curve = new RimSummaryCurve();
|
||||
curve->setParentQwtPlotNoReplot(m_parentQwtPlot);
|
||||
curve->setSummaryCase(currentCase);
|
||||
curve->setSummaryAddress(caseAddrPair.second);
|
||||
curve->setSummaryAddress(caseAddrPair.summaryAddress());
|
||||
curve->setYAxis(m_plotAxis());
|
||||
curve->applyCurveAutoNameSettings(*m_curveNameConfig());
|
||||
|
||||
|
||||
@@ -41,7 +41,7 @@ class RimSummaryCurve;
|
||||
class RimSummaryFilter;
|
||||
class RiuLineSegmentQwtPlotCurve;
|
||||
class RimSummaryCurveAutoName;
|
||||
|
||||
class RiaSummaryCurveDefinition;
|
||||
|
||||
|
||||
|
||||
@@ -81,14 +81,14 @@ public:
|
||||
|
||||
private:
|
||||
void syncCurvesFromUiSelection();
|
||||
void createCurvesFromCurveDefinitions(const std::set<std::pair<RimSummaryCase*, RifEclipseSummaryAddress> >& curveDefinitions);
|
||||
void createCurvesFromCurveDefinitions(const std::set<RiaSummaryCurveDefinition>& curveDefinitions);
|
||||
void syncUiSelectionFromCurves();
|
||||
std::set<RifEclipseSummaryAddress> findPossibleSummaryAddresses();
|
||||
|
||||
void createSetOfCasesAndResultAdresses(
|
||||
const std::vector<RimSummaryCase*>& cases,
|
||||
const RimSummaryFilter& filter,
|
||||
std::set<std::pair<RimSummaryCase*, RifEclipseSummaryAddress> >* curveDefinitions) const;
|
||||
std::set<RiaSummaryCurveDefinition>* curveDefinitions) const;
|
||||
|
||||
// Overridden PDM methods
|
||||
virtual caf::PdmFieldHandle* objectToggleField() override;
|
||||
|
||||
Reference in New Issue
Block a user