From 314c20a04ac846e7fda65c0c285d3271c1aa2c70 Mon Sep 17 00:00:00 2001 From: Magne Sjaastad Date: Thu, 22 Nov 2018 15:24:14 +0100 Subject: [PATCH 1/5] #3735 Summary plot : Improve stepping for well path name --- .../RifEclipseSummaryAddress.cpp | 20 +++++++++++++++++++ .../FileInterface/RifEclipseSummaryAddress.h | 2 ++ .../Summary/RimSummaryPlotSourceStepping.cpp | 19 ++++++++++-------- 3 files changed, 33 insertions(+), 8 deletions(-) diff --git a/ApplicationCode/FileInterface/RifEclipseSummaryAddress.cpp b/ApplicationCode/FileInterface/RifEclipseSummaryAddress.cpp index ab4867c79d..6fed115bd3 100644 --- a/ApplicationCode/FileInterface/RifEclipseSummaryAddress.cpp +++ b/ApplicationCode/FileInterface/RifEclipseSummaryAddress.cpp @@ -520,6 +520,26 @@ RifEclipseSummaryAddress RifEclipseSummaryAddress::ensembleStatisticsAddress(con //-------------------------------------------------------------------------------------------------- /// //-------------------------------------------------------------------------------------------------- +bool RifEclipseSummaryAddress::isDependentOnWellName(const RifEclipseSummaryAddress& address) +{ + // clang-format off + if (address.category() == SUMMARY_WELL || + address.category() == SUMMARY_WELL_COMPLETION || + address.category() == SUMMARY_WELL_COMPLETION_LGR || + address.category() == SUMMARY_WELL_LGR || + address.category() == SUMMARY_WELL_SEGMENT) + { + return true; + } + + // clang-format on + + return false; +} + +//-------------------------------------------------------------------------------------------------- +/// +//-------------------------------------------------------------------------------------------------- const std::string RifEclipseSummaryAddress::ensembleStatisticsQuantityName() const { QString qName = QString::fromStdString(m_quantityName); diff --git a/ApplicationCode/FileInterface/RifEclipseSummaryAddress.h b/ApplicationCode/FileInterface/RifEclipseSummaryAddress.h index c673326781..e898220568 100644 --- a/ApplicationCode/FileInterface/RifEclipseSummaryAddress.h +++ b/ApplicationCode/FileInterface/RifEclipseSummaryAddress.h @@ -144,6 +144,8 @@ public: static RifEclipseSummaryAddress importedAddress(const std::string& quantityName); static RifEclipseSummaryAddress ensembleStatisticsAddress(const std::string& quantityName, const std::string& dataQuantityName); + static bool isDependentOnWellName(const RifEclipseSummaryAddress& address); + // Access methods SummaryVarCategory category() const { return m_variableCategory; } diff --git a/ApplicationCode/ProjectDataModel/Summary/RimSummaryPlotSourceStepping.cpp b/ApplicationCode/ProjectDataModel/Summary/RimSummaryPlotSourceStepping.cpp index ae7e07a5a2..8e83d82db3 100644 --- a/ApplicationCode/ProjectDataModel/Summary/RimSummaryPlotSourceStepping.cpp +++ b/ApplicationCode/ProjectDataModel/Summary/RimSummaryPlotSourceStepping.cpp @@ -44,7 +44,8 @@ CAF_PDM_SOURCE_INIT(RimSummaryPlotSourceStepping, "RimSummaryCurveCollectionModi //-------------------------------------------------------------------------------------------------- /// //-------------------------------------------------------------------------------------------------- -RimSummaryPlotSourceStepping::RimSummaryPlotSourceStepping() : m_sourceSteppingType(Y_AXIS) +RimSummaryPlotSourceStepping::RimSummaryPlotSourceStepping() + : m_sourceSteppingType(Y_AXIS) { // clang-format off CAF_PDM_InitObject("Summary Curves Modifier", "", "", ""); @@ -244,8 +245,9 @@ QList RimSummaryPlotSourceStepping::calculateValueOption //-------------------------------------------------------------------------------------------------- /// //-------------------------------------------------------------------------------------------------- -void RimSummaryPlotSourceStepping::fieldChangedByUi(const caf::PdmFieldHandle* changedField, const QVariant& oldValue, - const QVariant& newValue) +void RimSummaryPlotSourceStepping::fieldChangedByUi(const caf::PdmFieldHandle* changedField, + const QVariant& oldValue, + const QVariant& newValue) { RimSummaryCurveCollection* curveCollection = nullptr; this->firstAncestorOrThisOfTypeAsserted(curveCollection); @@ -286,7 +288,7 @@ void RimSummaryPlotSourceStepping::fieldChangedByUi(const caf::PdmFieldHandle* c if (isYAxisStepping()) { RifEclipseSummaryAddress adr = curve->summaryAddressY(); - if (adr.category() == RifEclipseSummaryAddress::SUMMARY_WELL) + if (RifEclipseSummaryAddress::isDependentOnWellName(adr)) { adr.setWellName(m_wellName().toStdString()); @@ -297,7 +299,7 @@ void RimSummaryPlotSourceStepping::fieldChangedByUi(const caf::PdmFieldHandle* c if (isXAxisStepping()) { RifEclipseSummaryAddress adr = curve->summaryAddressX(); - if (adr.category() == RifEclipseSummaryAddress::SUMMARY_WELL) + if (RifEclipseSummaryAddress::isDependentOnWellName(adr)) { adr.setWellName(m_wellName().toStdString()); @@ -417,7 +419,7 @@ void RimSummaryPlotSourceStepping::fieldChangedByUi(const caf::PdmFieldHandle* c std::vector RimSummaryPlotSourceStepping::summaryReadersForCurves() const { std::vector readers; - RimSummaryCurveCollection* curveCollection = nullptr; + RimSummaryCurveCollection* curveCollection = nullptr; this->firstAncestorOrThisOfTypeAsserted(curveCollection); for (auto curve : curveCollection->curves()) @@ -646,7 +648,7 @@ RiaSummaryCurveAnalyzer* RimSummaryPlotSourceStepping::analyzerForReader(RifSumm //-------------------------------------------------------------------------------------------------- void RimSummaryPlotSourceStepping::modifyCurrentIndex(caf::PdmValueField* valueField, int indexOffset) { - bool useOptionsOnly; + bool useOptionsOnly; QList options = calculateValueOptions(valueField, &useOptionsOnly); RimDataSourceSteppingTools::modifyCurrentIndex(valueField, options, indexOffset); } @@ -654,7 +656,8 @@ void RimSummaryPlotSourceStepping::modifyCurrentIndex(caf::PdmValueField* valueF //-------------------------------------------------------------------------------------------------- /// //-------------------------------------------------------------------------------------------------- -void RimSummaryPlotSourceStepping::defineEditorAttribute(const caf::PdmFieldHandle* field, QString uiConfigName, +void RimSummaryPlotSourceStepping::defineEditorAttribute(const caf::PdmFieldHandle* field, + QString uiConfigName, caf::PdmUiEditorAttribute* attribute) { caf::PdmUiComboBoxEditorAttribute* myAttr = dynamic_cast(attribute); From 5603fcf21d40eee68710a285d352c51f5f82c907 Mon Sep 17 00:00:00 2001 From: Magne Sjaastad Date: Thu, 22 Nov 2018 16:01:27 +0100 Subject: [PATCH 2/5] #3688 Summary Plot : Update of source stepping toolbar fails sometimes --- .../Commands/SummaryPlotCommands/RicSummaryCurveCreator.cpp | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/ApplicationCode/Commands/SummaryPlotCommands/RicSummaryCurveCreator.cpp b/ApplicationCode/Commands/SummaryPlotCommands/RicSummaryCurveCreator.cpp index 1d0fae091a..9c17fe4ce2 100644 --- a/ApplicationCode/Commands/SummaryPlotCommands/RicSummaryCurveCreator.cpp +++ b/ApplicationCode/Commands/SummaryPlotCommands/RicSummaryCurveCreator.cpp @@ -51,6 +51,7 @@ #include "RiuSummaryCurveDefSelection.h" #include "RiuSummaryQwtPlot.h" #include "RiuTools.h" +#include "RiuPlotMainWindow.h" #include "cafPdmUiComboBoxEditor.h" #include "cafPdmUiPushButtonEditor.h" @@ -903,6 +904,9 @@ void RicSummaryCurveCreator::createNewPlot() m_targetPlot = newSummaryPlot; updateTargetPlot(); + + RiuPlotMainWindow* mainPlotWindow = RiaApplication::instance()->mainPlotWindow(); + mainPlotWindow->updateSummaryPlotToolBar(); } } } From 89098705cb2c4ac92b1810fa4b6903d71543fdb3 Mon Sep 17 00:00:00 2001 From: Magne Sjaastad Date: Thu, 22 Nov 2018 16:02:44 +0100 Subject: [PATCH 3/5] Whitespace --- .../RicSummaryCurveCreator.cpp | 47 ++++++++++--------- 1 file changed, 26 insertions(+), 21 deletions(-) diff --git a/ApplicationCode/Commands/SummaryPlotCommands/RicSummaryCurveCreator.cpp b/ApplicationCode/Commands/SummaryPlotCommands/RicSummaryCurveCreator.cpp index 9c17fe4ce2..ef83dfb2ab 100644 --- a/ApplicationCode/Commands/SummaryPlotCommands/RicSummaryCurveCreator.cpp +++ b/ApplicationCode/Commands/SummaryPlotCommands/RicSummaryCurveCreator.cpp @@ -20,8 +20,8 @@ #include "RiaApplication.h" #include "RiaColorTables.h" -#include "RiaSummaryCurveDefinition.h" #include "RiaCurveSetDefinition.h" +#include "RiaSummaryCurveDefinition.h" #include "RicSelectSummaryPlotUI.h" #include "RiuSummaryCurveDefinitionKeywords.h" @@ -47,11 +47,11 @@ #include "RimSummaryPlot.h" #include "RimSummaryPlotCollection.h" +#include "RiuPlotMainWindow.h" #include "RiuPlotMainWindowTools.h" #include "RiuSummaryCurveDefSelection.h" #include "RiuSummaryQwtPlot.h" #include "RiuTools.h" -#include "RiuPlotMainWindow.h" #include "cafPdmUiComboBoxEditor.h" #include "cafPdmUiPushButtonEditor.h" @@ -77,8 +77,9 @@ const QString RicSummaryCurveCreator::CONFIGURATION_NAME = "CurveCreatorCfg"; //-------------------------------------------------------------------------------------------------- /// Internal functions //-------------------------------------------------------------------------------------------------- -int ensembleCurveCount(const std::set& allCurveDefs); -template std::vector toVector(const std::set& set); +int ensembleCurveCount(const std::set& allCurveDefs); +template +std::vector toVector(const std::set& set); //-------------------------------------------------------------------------------------------------- /// @@ -347,7 +348,8 @@ void RicSummaryCurveCreator::syncPreviewCurvesFromUiSelection() for (const auto& curve : currentCurvesInPreviewPlot) { RimSummaryCase* sumCase = curve->summaryCaseY(); - currentCurveDefs.insert(RiaSummaryCurveDefinition(sumCase, curve->summaryAddressY(), sumCase ? sumCase->ensemble() : nullptr)); + currentCurveDefs.insert( + RiaSummaryCurveDefinition(sumCase, curve->summaryAddressY(), sumCase ? sumCase->ensemble() : nullptr)); } { @@ -381,10 +383,12 @@ void RicSummaryCurveCreator::syncPreviewCurvesFromUiSelection() // Curve sets to delete std::set curveSetsToDelete; { - std::vector allCurveSetDefinitionsVector = m_summaryCurveSelectionEditor->summaryAddressSelection()->allCurveSetDefinitionsFromSelections(); - std::set allCurveSetDefinitions = std::set(allCurveSetDefinitionsVector.begin(), allCurveSetDefinitionsVector.end()); + std::vector allCurveSetDefinitionsVector = + m_summaryCurveSelectionEditor->summaryAddressSelection()->allCurveSetDefinitionsFromSelections(); + std::set allCurveSetDefinitions = + std::set(allCurveSetDefinitionsVector.begin(), allCurveSetDefinitionsVector.end()); std::vector currentCurveSetsInPreviewPlot = m_previewPlot->curveSets(); - std::set currentCurveSetDefs; + std::set currentCurveSetDefs; for (const auto& curveSet : currentCurveSetsInPreviewPlot) { @@ -404,8 +408,8 @@ void RicSummaryCurveCreator::syncPreviewCurvesFromUiSelection() for (const auto& curveSet : currentCurveSetsInPreviewPlot) { - RimSummaryCaseCollection* ensemble = curveSet->summaryCaseCollection(); - RiaCurveSetDefinition curveSetDef = RiaCurveSetDefinition(ensemble, curveSet->summaryAddress()); + RimSummaryCaseCollection* ensemble = curveSet->summaryCaseCollection(); + RiaCurveSetDefinition curveSetDef = RiaCurveSetDefinition(ensemble, curveSet->summaryAddress()); if (deleteCurveSetDefs.count(curveSetDef) > 0) curveSetsToDelete.insert(curveSet); } } @@ -422,9 +426,9 @@ void RicSummaryCurveCreator::updatePreviewCurvesFromCurveDefinitions( const std::set& allCurveDefsToDisplay, const std::set& curveDefsToAdd, const std::set& curvesToDelete, - const std::set& curveSetsToDelete) + const std::set& curveSetsToDelete) { - static bool warningDisplayed = false; + static bool warningDisplayed = false; std::set summaryCurveDefsToDisplay; @@ -439,11 +443,11 @@ void RicSummaryCurveCreator::updatePreviewCurvesFromCurveDefinitions( initCurveAppearanceCalculator(curveLookCalc); // Delete curves - if(!curveSetsToDelete.empty()) + if (!curveSetsToDelete.empty()) { m_previewPlot->ensembleCurveSetCollection()->deleteCurveSets(toVector(curveSetsToDelete)); } - if(!curvesToDelete.empty()) + if (!curvesToDelete.empty()) { m_previewPlot->deleteCurves(toVector(curvesToDelete)); } @@ -458,7 +462,7 @@ void RicSummaryCurveCreator::updatePreviewCurvesFromCurveDefinitions( curve->setSummaryCaseY(currentCase); curve->setSummaryAddressY(curveDef.summaryAddress()); curve->applyCurveAutoNameSettings(*m_curveNameConfig()); - if(currentCase->isObservedData()) curve->setSymbolSkipDistance(0); + if (currentCase->isObservedData()) curve->setSymbolSkipDistance(0); if (curveDef.isEnsembleCurve()) { @@ -480,9 +484,8 @@ void RicSummaryCurveCreator::updatePreviewCurvesFromCurveDefinitions( curveSet->setSummaryAddress(curveDef.summaryAddress()); // Set single curve set color - auto allCurveSets = m_previewPlot->ensembleCurveSetCollection()->curveSets(); - size_t colorIndex = std::count_if(allCurveSets.begin(), allCurveSets.end(), [](RimEnsembleCurveSet* curveSet) - { + auto allCurveSets = m_previewPlot->ensembleCurveSetCollection()->curveSets(); + size_t colorIndex = std::count_if(allCurveSets.begin(), allCurveSets.end(), [](RimEnsembleCurveSet* curveSet) { return curveSet->colorMode() == RimEnsembleCurveSet::SINGLE_COLOR; }); curveSet->setColor(RiaColorTables::summaryCurveDefaultPaletteColors().cycledColor3f(colorIndex)); @@ -490,7 +493,8 @@ void RicSummaryCurveCreator::updatePreviewCurvesFromCurveDefinitions( // Add curve to plot m_previewPlot->ensembleCurveSetCollection()->addCurveSet(curveSet); - if (m_previewPlot->ensembleCurveSetCollection()->curveSets().size() > 1 && ensembleCurveCnt > ENSEMBLE_CURVE_COUNT_THRESHOLD) + if (m_previewPlot->ensembleCurveSetCollection()->curveSets().size() > 1 && + ensembleCurveCnt > ENSEMBLE_CURVE_COUNT_THRESHOLD) { // Toggle off new curve set and display warning curveSet->showCurves(false); @@ -559,7 +563,7 @@ std::set RicSummaryCurveCreator::getAllSummaryWellNames() { const std::set allAddresses = reader->allResultAddresses(); - for(auto& address : allAddresses) + for (auto& address : allAddresses) { if (address.category() == RifEclipseSummaryAddress::SUMMARY_WELL) { @@ -1019,7 +1023,8 @@ int ensembleCurveCount(const std::set& allCurveDefs) //-------------------------------------------------------------------------------------------------- /// //-------------------------------------------------------------------------------------------------- -template std::vector toVector(const std::set& set) +template +std::vector toVector(const std::set& set) { return std::vector(set.begin(), set.end()); } From 56ae4fa5bd2252e24b26e01621ea6db797c1b0d7 Mon Sep 17 00:00:00 2001 From: Gaute Lindkvist Date: Fri, 23 Nov 2018 08:20:05 +0100 Subject: [PATCH 4/5] Fix Linux Build Problem after FlowDiag --- ApplicationCode/ProjectDataModel/RimEclipseResultDefinition.h | 2 ++ 1 file changed, 2 insertions(+) diff --git a/ApplicationCode/ProjectDataModel/RimEclipseResultDefinition.h b/ApplicationCode/ProjectDataModel/RimEclipseResultDefinition.h index 41e4db4dcb..1d7c7279d7 100644 --- a/ApplicationCode/ProjectDataModel/RimEclipseResultDefinition.h +++ b/ApplicationCode/ProjectDataModel/RimEclipseResultDefinition.h @@ -33,6 +33,8 @@ #include "cafPdmPtrField.h" #include "cafPdmUiItem.h" +#include + class RigCaseCellResultsData; class RimEclipseCase; class RimEclipseView; From 5fee7b14921807462af18fb85ec6e7b3997c7414 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B8rn=20Erik=20Jensen?= Date: Fri, 23 Nov 2018 08:37:09 +0100 Subject: [PATCH 5/5] #3733 exportProperty. Remove unused command parameter --- ApplicationCode/CommandFileInterface/RicfExportProperty.cpp | 1 - 1 file changed, 1 deletion(-) diff --git a/ApplicationCode/CommandFileInterface/RicfExportProperty.cpp b/ApplicationCode/CommandFileInterface/RicfExportProperty.cpp index e1abbd8faa..1784a46e22 100644 --- a/ApplicationCode/CommandFileInterface/RicfExportProperty.cpp +++ b/ApplicationCode/CommandFileInterface/RicfExportProperty.cpp @@ -50,7 +50,6 @@ RicfExportProperty::RicfExportProperty() RICF_InitField(&m_caseId, "caseId", -1, "Case ID", "", "", ""); RICF_InitField(&m_timeStepIndex, "timeStep", -1, "Time Step Index", "", "", ""); RICF_InitField(&m_propertyName, "property", QString(), "Property Name", "", "", ""); - RICF_InitField(&m_type, "type", caf::AppEnum(RiaDefines::DYNAMIC_NATIVE), "Property type", "", "", ""); RICF_InitField(&m_eclipseKeyword, "eclipseKeyword", QString(), "Eclipse Keyword", "", "", ""); RICF_InitField(&m_undefinedValue, "undefinedValue", 0.0, "Undefined Value", "", "", ""); RICF_InitField(&m_exportFileName, "exportFile", QString(), "Export FileName", "", "", "");