From 0da6e3ccb5e0ad249f019fef3b4dfbe9bc0c4467 Mon Sep 17 00:00:00 2001 From: Kristian Bendiksen Date: Fri, 4 Jul 2025 11:34:58 +0200 Subject: [PATCH] Histogram: add data source for ensemble fracture statistics histograms. --- .../Commands/CMakeLists_files.cmake | 15 +- .../Histogram/RicNewHistogramCurveFeature.cpp | 7 +- ...eEnsembleFractureStatisticsPlotFeature.cpp | 59 ------ ...ateEnsembleFractureStatisticsPlotFeature.h | 33 ---- .../RimEnsembleFractureStatistics.cpp | 10 +- .../Histogram/CMakeLists_files.cmake | 2 + ...RimEnsembleFractureHistogramDataSource.cpp | 185 ++++++++++++++++++ .../RimEnsembleFractureHistogramDataSource.h | 64 ++++++ .../RimContextCommandBuilder.cpp | 12 +- .../ProjectDataModel/RimEclipseView.cpp | 15 -- .../RimMainPlotCollection.cpp | 20 +- .../ProjectDataModel/RimMainPlotCollection.h | 7 +- .../ProjectDataModel/RimProject.cpp | 17 -- 13 files changed, 272 insertions(+), 174 deletions(-) delete mode 100644 ApplicationLibCode/Commands/RicCreateEnsembleFractureStatisticsPlotFeature.cpp delete mode 100644 ApplicationLibCode/Commands/RicCreateEnsembleFractureStatisticsPlotFeature.h create mode 100644 ApplicationLibCode/ProjectDataModel/Histogram/RimEnsembleFractureHistogramDataSource.cpp create mode 100644 ApplicationLibCode/ProjectDataModel/Histogram/RimEnsembleFractureHistogramDataSource.h diff --git a/ApplicationLibCode/Commands/CMakeLists_files.cmake b/ApplicationLibCode/Commands/CMakeLists_files.cmake index e164466581..dad7149947 100644 --- a/ApplicationLibCode/Commands/CMakeLists_files.cmake +++ b/ApplicationLibCode/Commands/CMakeLists_files.cmake @@ -102,6 +102,7 @@ set(SOURCE_GROUP_HEADER_FILES ${CMAKE_CURRENT_LIST_DIR}/RicPolygonFromImageDialog.h ${CMAKE_CURRENT_LIST_DIR}/RicCreateSummaryEnsembleFeature.h ${CMAKE_CURRENT_LIST_DIR}/RicHistogramPlotTools.h + ${CMAKE_CURRENT_LIST_DIR}/RicCreateGridStatisticsPlotFeature.h ) set(SOURCE_GROUP_SOURCE_FILES @@ -208,20 +209,8 @@ set(SOURCE_GROUP_SOURCE_FILES ${CMAKE_CURRENT_LIST_DIR}/RicPolygonFromImageDialog.cpp ${CMAKE_CURRENT_LIST_DIR}/RicCreateSummaryEnsembleFeature.cpp ${CMAKE_CURRENT_LIST_DIR}/RicHistogramPlotTools.cpp -) - -if(RESINSIGHT_USE_QT_CHARTS) - list( - APPEND SOURCE_GROUP_HEADER_FILES - ${CMAKE_CURRENT_LIST_DIR}/RicCreateEnsembleFractureStatisticsPlotFeature.h - ${CMAKE_CURRENT_LIST_DIR}/RicCreateGridStatisticsPlotFeature.h - ) - list( - APPEND SOURCE_GROUP_SOURCE_FILES - ${CMAKE_CURRENT_LIST_DIR}/RicCreateEnsembleFractureStatisticsPlotFeature.cpp ${CMAKE_CURRENT_LIST_DIR}/RicCreateGridStatisticsPlotFeature.cpp - ) -endif() +) list(APPEND COMMAND_CODE_HEADER_FILES ${SOURCE_GROUP_HEADER_FILES}) list(APPEND COMMAND_CODE_SOURCE_FILES ${SOURCE_GROUP_SOURCE_FILES}) diff --git a/ApplicationLibCode/Commands/Histogram/RicNewHistogramCurveFeature.cpp b/ApplicationLibCode/Commands/Histogram/RicNewHistogramCurveFeature.cpp index 2fe24b7128..f31e4d5c1d 100644 --- a/ApplicationLibCode/Commands/Histogram/RicNewHistogramCurveFeature.cpp +++ b/ApplicationLibCode/Commands/Histogram/RicNewHistogramCurveFeature.cpp @@ -20,14 +20,15 @@ #include "RiaGuiApplication.h" +#include "RicHistogramPlotTools.h" + +#include "Histogram/RimEnsembleFractureHistogramDataSource.h" #include "Histogram/RimEnsembleParameterHistogramDataSource.h" #include "Histogram/RimEnsembleSummaryVectorHistogramDataSource.h" #include "Histogram/RimGridStatisticsHistogramDataSource.h" #include "Histogram/RimHistogramCurve.h" #include "Histogram/RimHistogramCurveCollection.h" #include "Histogram/RimHistogramPlot.h" -#include "RicHistogramPlotTools.h" -#include "RimProject.h" #include "RiuPlotMainWindow.h" #include "RiuPlotMainWindowTools.h" @@ -59,6 +60,8 @@ void RicNewHistogramCurveFeature::onActionTriggered( bool isChecked ) return new RimGridStatisticsHistogramDataSource(); else if ( dataSourceType == "Summary Vector" ) return new RimEnsembleSummaryVectorHistogramDataSource(); + else if ( dataSourceType == "Ensemble Fracture Statistics" ) + return new RimEnsembleFractureHistogramDataSource(); return nullptr; }; diff --git a/ApplicationLibCode/Commands/RicCreateEnsembleFractureStatisticsPlotFeature.cpp b/ApplicationLibCode/Commands/RicCreateEnsembleFractureStatisticsPlotFeature.cpp deleted file mode 100644 index 5e04688976..0000000000 --- a/ApplicationLibCode/Commands/RicCreateEnsembleFractureStatisticsPlotFeature.cpp +++ /dev/null @@ -1,59 +0,0 @@ -///////////////////////////////////////////////////////////////////////////////// -// -// Copyright (C) 2021- Equinor ASA -// -// ResInsight is free software: you can redistribute it and/or modify -// it under the terms of the GNU General Public License as published by -// the Free Software Foundation, either version 3 of the License, or -// (at your option) any later version. -// -// ResInsight is distributed in the hope that it will be useful, but WITHOUT ANY -// WARRANTY; without even the implied warranty of MERCHANTABILITY or -// FITNESS FOR A PARTICULAR PURPOSE. -// -// See the GNU General Public License at -// for more details. -// -///////////////////////////////////////////////////////////////////////////////// - -#include "RicCreateEnsembleFractureStatisticsPlotFeature.h" - -#include "RiaGuiApplication.h" - -#include "RimEnsembleFractureStatisticsPlot.h" -#include "RimEnsembleFractureStatisticsPlotCollection.h" -#include "RimMainPlotCollection.h" - -#include "RiuPlotMainWindow.h" -#include "RiuPlotMainWindowTools.h" - -#include - -CAF_CMD_SOURCE_INIT( RicCreateEnsembleFractureStatisticsPlotFeature, "RicCreateEnsembleFractureStatisticsPlotFeature" ); - -//-------------------------------------------------------------------------------------------------- -/// -//-------------------------------------------------------------------------------------------------- -void RicCreateEnsembleFractureStatisticsPlotFeature::onActionTriggered( bool isChecked ) -{ - RimEnsembleFractureStatisticsPlotCollection* collection = RimMainPlotCollection::current()->ensembleFractureStatisticsPlotCollection(); - - RimEnsembleFractureStatisticsPlot* plot = new RimEnsembleFractureStatisticsPlot(); - plot->zoomAll(); - plot->updateConnectedEditors(); - plot->setAsPlotMdiWindow(); - plot->loadDataAndUpdate(); - - collection->addEnsembleFractureStatisticsPlot( plot ); - collection->updateAllRequiredEditors(); - RiaGuiApplication::instance()->getOrCreateAndShowMainPlotWindow(); - RiuPlotMainWindowTools::onObjectAppended( plot ); -} - -//-------------------------------------------------------------------------------------------------- -/// -//-------------------------------------------------------------------------------------------------- -void RicCreateEnsembleFractureStatisticsPlotFeature::setupActionLook( QAction* actionToSetup ) -{ - actionToSetup->setText( "Create Ensemble Fracture Statistics Plot" ); -} diff --git a/ApplicationLibCode/Commands/RicCreateEnsembleFractureStatisticsPlotFeature.h b/ApplicationLibCode/Commands/RicCreateEnsembleFractureStatisticsPlotFeature.h deleted file mode 100644 index 9c331cc46f..0000000000 --- a/ApplicationLibCode/Commands/RicCreateEnsembleFractureStatisticsPlotFeature.h +++ /dev/null @@ -1,33 +0,0 @@ -///////////////////////////////////////////////////////////////////////////////// -// -// Copyright (C) 2021- Equinor ASA -// -// ResInsight is free software: you can redistribute it and/or modify -// it under the terms of the GNU General Public License as published by -// the Free Software Foundation, either version 3 of the License, or -// (at your option) any later version. -// -// ResInsight is distributed in the hope that it will be useful, but WITHOUT ANY -// WARRANTY; without even the implied warranty of MERCHANTABILITY or -// FITNESS FOR A PARTICULAR PURPOSE. -// -// See the GNU General Public License at -// for more details. -// -///////////////////////////////////////////////////////////////////////////////// - -#pragma once - -#include "cafCmdFeature.h" - -//================================================================================================== -/// -//================================================================================================== -class RicCreateEnsembleFractureStatisticsPlotFeature : public caf::CmdFeature -{ - CAF_CMD_HEADER_INIT; - -protected: - void onActionTriggered( bool isChecked ) override; - void setupActionLook( QAction* actionToSetup ) override; -}; diff --git a/ApplicationLibCode/ProjectDataModel/Completions/RimEnsembleFractureStatistics.cpp b/ApplicationLibCode/ProjectDataModel/Completions/RimEnsembleFractureStatistics.cpp index b5467dd246..abf7a63235 100644 --- a/ApplicationLibCode/ProjectDataModel/Completions/RimEnsembleFractureStatistics.cpp +++ b/ApplicationLibCode/ProjectDataModel/Completions/RimEnsembleFractureStatistics.cpp @@ -20,7 +20,6 @@ #include "RiaApplication.h" #include "RiaDefines.h" -#include "RiaInterpolationTools.h" #include "RiaLogging.h" #include "RiaNumberFormat.h" #include "RiaPreferences.h" @@ -34,11 +33,8 @@ #include "RigStatisticsMath.h" #include "RigStimPlanFractureDefinition.h" -#ifdef USE_QTCHARTS -#include "RimEnsembleFractureStatisticsPlot.h" -#endif +#include "Histogram/RimEnsembleFractureHistogramDataSource.h" #include "RimFractureTemplateCollection.h" -#include "RimHistogramCalculator.h" #include "RimProject.h" #include "RimStimPlanFractureTemplate.h" @@ -288,15 +284,13 @@ void RimEnsembleFractureStatistics::fieldChangedByUi( const caf::PdmFieldHandle* { loadAndUpdateData(); -#ifdef USE_QTCHARTS // Update referring plots std::vector referringObjects = objectsWithReferringPtrFields(); for ( caf::PdmObjectHandle* obj : referringObjects ) { - auto plot = dynamic_cast( obj ); + auto plot = dynamic_cast( obj ); if ( plot ) plot->loadDataAndUpdate(); } -#endif } } diff --git a/ApplicationLibCode/ProjectDataModel/Histogram/CMakeLists_files.cmake b/ApplicationLibCode/ProjectDataModel/Histogram/CMakeLists_files.cmake index 732ce6a834..e238556a4b 100644 --- a/ApplicationLibCode/ProjectDataModel/Histogram/CMakeLists_files.cmake +++ b/ApplicationLibCode/ProjectDataModel/Histogram/CMakeLists_files.cmake @@ -8,6 +8,7 @@ set(SOURCE_GROUP_HEADER_FILES ${CMAKE_CURRENT_LIST_DIR}/RimHistogramMultiPlot.h ${CMAKE_CURRENT_LIST_DIR}/RimHistogramMultiPlotCollection.h ${CMAKE_CURRENT_LIST_DIR}/RimHistogramPlot.h + ${CMAKE_CURRENT_LIST_DIR}/RimEnsembleFractureHistogramDataSource.h ) set(SOURCE_GROUP_SOURCE_FILES @@ -20,6 +21,7 @@ set(SOURCE_GROUP_SOURCE_FILES ${CMAKE_CURRENT_LIST_DIR}/RimHistogramMultiPlot.cpp ${CMAKE_CURRENT_LIST_DIR}/RimHistogramMultiPlotCollection.cpp ${CMAKE_CURRENT_LIST_DIR}/RimHistogramPlot.cpp + ${CMAKE_CURRENT_LIST_DIR}/RimEnsembleFractureHistogramDataSource.cpp ) list(APPEND CODE_HEADER_FILES ${SOURCE_GROUP_HEADER_FILES}) diff --git a/ApplicationLibCode/ProjectDataModel/Histogram/RimEnsembleFractureHistogramDataSource.cpp b/ApplicationLibCode/ProjectDataModel/Histogram/RimEnsembleFractureHistogramDataSource.cpp new file mode 100644 index 0000000000..4200ca51ab --- /dev/null +++ b/ApplicationLibCode/ProjectDataModel/Histogram/RimEnsembleFractureHistogramDataSource.cpp @@ -0,0 +1,185 @@ +///////////////////////////////////////////////////////////////////////////////// +// +// Copyright (C) 2025 Equinor ASA +// +// ResInsight is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. +// +// ResInsight is distributed in the hope that it will be useful, but WITHOUT ANY +// WARRANTY; without even the implied warranty of MERCHANTABILITY or +// FITNESS FOR A PARTICULAR PURPOSE. +// +// See the GNU General Public License at +// for more details. +// +///////////////////////////////////////////////////////////////////////////////// + +#include "RimEnsembleFractureHistogramDataSource.h" + +#include "Histogram/RimHistogramPlot.h" +#include "RimEnsembleFractureStatistics.h" +#include "RimProject.h" + +CAF_PDM_XML_SOURCE_INIT( RimEnsembleFractureHistogramDataSource, "EnsembleFractureHistogramDataSource" ); + +//-------------------------------------------------------------------------------------------------- +/// +//-------------------------------------------------------------------------------------------------- +RimEnsembleFractureHistogramDataSource::RimEnsembleFractureHistogramDataSource() +{ + CAF_PDM_InitObject( "Ensemble Fracture Histogram Data Source" ); + + CAF_PDM_InitFieldNoDefault( &m_ensembleFractureStatistics, "EnsembleFractureStatistics", "Ensemble Fracture Statistics" ); + m_ensembleFractureStatistics.uiCapability()->setUiTreeChildrenHidden( true ); + + CAF_PDM_InitFieldNoDefault( &m_property, "Property", "Property" ); + + CAF_PDM_InitField( &m_numBins, "NumBins", 15, "Number of Bins" ); + + setDefaults(); + + setDeletable( true ); +} + +//-------------------------------------------------------------------------------------------------- +/// +//-------------------------------------------------------------------------------------------------- +RimEnsembleFractureHistogramDataSource::~RimEnsembleFractureHistogramDataSource() +{ +} + +//-------------------------------------------------------------------------------------------------- +/// +//-------------------------------------------------------------------------------------------------- +QList RimEnsembleFractureHistogramDataSource::calculateValueOptions( const caf::PdmFieldHandle* fieldNeedingOptions ) +{ + QList options; + + if ( fieldNeedingOptions == &m_ensembleFractureStatistics ) + { + std::vector esfItems = + RimProject::current()->descendantsIncludingThisOfType(); + for ( auto item : esfItems ) + { + options.push_back( caf::PdmOptionItemInfo( item->name(), item ) ); + } + } + + return options; +} + +//-------------------------------------------------------------------------------------------------- +/// +//-------------------------------------------------------------------------------------------------- +void RimEnsembleFractureHistogramDataSource ::defineUiOrdering( QString uiConfigName, caf::PdmUiOrdering& uiOrdering ) +{ + uiOrdering.add( &m_ensembleFractureStatistics ); + uiOrdering.add( &m_property ); + uiOrdering.add( &m_numBins ); + + uiOrdering.skipRemainingFields( true ); +} + +//-------------------------------------------------------------------------------------------------- +/// +//-------------------------------------------------------------------------------------------------- +void RimEnsembleFractureHistogramDataSource::fieldChangedByUi( const caf::PdmFieldHandle* changedField, + const QVariant& oldValue, + const QVariant& newValue ) +{ + dataSourceChanged.send(); +} + +//-------------------------------------------------------------------------------------------------- +/// +//-------------------------------------------------------------------------------------------------- +std::string RimEnsembleFractureHistogramDataSource::unitNameY() const +{ + return ""; +} + +//-------------------------------------------------------------------------------------------------- +/// +//-------------------------------------------------------------------------------------------------- +std::string RimEnsembleFractureHistogramDataSource::unitNameX() const +{ + return ""; +} + +//-------------------------------------------------------------------------------------------------- +/// +//-------------------------------------------------------------------------------------------------- +RimHistogramDataSource::HistogramResult RimEnsembleFractureHistogramDataSource::compute( RimHistogramPlot::GraphType graphType, + RimHistogramPlot::FrequencyType frequencyType ) const +{ + RimHistogramDataSource::HistogramResult result; + + RigHistogramData histogramData = + RigEnsembleFractureStatisticsCalculator::createStatisticsData( m_ensembleFractureStatistics(), m_property(), m_numBins() ); + + if ( !histogramData.isHistogramVectorValid() ) return result; + + double min = histogramData.min; + double max = histogramData.max; + + result.valuesX = computeHistogramBins( min, max, m_numBins, graphType ); + result.valuesY = computeHistogramFrequencies( histogramData.histogram, graphType, frequencyType ); + + result.p10 = histogramData.p10; + result.mean = histogramData.mean; + result.p90 = histogramData.p90; + + return result; +} + +//-------------------------------------------------------------------------------------------------- +/// +//-------------------------------------------------------------------------------------------------- +std::string RimEnsembleFractureHistogramDataSource::name() const +{ + if ( m_ensembleFractureStatistics() == nullptr ) + { + return "Undefined"; + } + + QStringList nameTags; + nameTags += m_ensembleFractureStatistics()->name(); + nameTags += caf::AppEnum::uiText( m_property() ); + + return nameTags.join( ", " ).toStdString(); +} + +//-------------------------------------------------------------------------------------------------- +/// +//-------------------------------------------------------------------------------------------------- +void RimEnsembleFractureHistogramDataSource::setEnsembleFractureStatistics( RimEnsembleFractureStatistics* statistics ) +{ + m_ensembleFractureStatistics = statistics; +} + +//-------------------------------------------------------------------------------------------------- +/// +//-------------------------------------------------------------------------------------------------- +void RimEnsembleFractureHistogramDataSource::setProperty( RigEnsembleFractureStatisticsCalculator::PropertyType property ) +{ + m_property = property; +} + +//-------------------------------------------------------------------------------------------------- +/// +//-------------------------------------------------------------------------------------------------- +void RimEnsembleFractureHistogramDataSource::setDefaults() +{ + auto esfItems = RimProject::current()->descendantsIncludingThisOfType(); + if ( !esfItems.empty() ) m_ensembleFractureStatistics = esfItems.front(); +} + +//-------------------------------------------------------------------------------------------------- +/// +//-------------------------------------------------------------------------------------------------- +void RimEnsembleFractureHistogramDataSource::loadDataAndUpdate() +{ + dataSourceChanged.send(); +} diff --git a/ApplicationLibCode/ProjectDataModel/Histogram/RimEnsembleFractureHistogramDataSource.h b/ApplicationLibCode/ProjectDataModel/Histogram/RimEnsembleFractureHistogramDataSource.h new file mode 100644 index 0000000000..a1a5e52afc --- /dev/null +++ b/ApplicationLibCode/ProjectDataModel/Histogram/RimEnsembleFractureHistogramDataSource.h @@ -0,0 +1,64 @@ +///////////////////////////////////////////////////////////////////////////////// +// +// Copyright (C) 2025 Equinor ASA +// +// ResInsight is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. +// +// ResInsight is distributed in the hope that it will be useful, but WITHOUT ANY +// WARRANTY; without even the implied warranty of MERCHANTABILITY or +// FITNESS FOR A PARTICULAR PURPOSE. +// +// See the GNU General Public License at +// for more details. +// +///////////////////////////////////////////////////////////////////////////////// + +#pragma once + +#include "RimHistogramDataSource.h" + +#include "cafPdmField.h" +#include "cafPdmPtrField.h" + +#include "RigEnsembleFractureStatisticsCalculator.h" + +class RimEnsembleFractureStatistics; + +//================================================================================================== +/// +/// +//================================================================================================== +class RimEnsembleFractureHistogramDataSource : public RimHistogramDataSource +{ + CAF_PDM_HEADER_INIT; + +public: + RimEnsembleFractureHistogramDataSource(); + ~RimEnsembleFractureHistogramDataSource() override; + + void setEnsembleFractureStatistics( RimEnsembleFractureStatistics* statistics ); + void setProperty( RigEnsembleFractureStatisticsCalculator::PropertyType property ); + + std::string unitNameX() const override; + std::string unitNameY() const override; + + HistogramResult compute( RimHistogramPlot::GraphType graphType, RimHistogramPlot::FrequencyType frequencyType ) const override; + + void setDefaults() override; + + std::string name() const override; + + void loadDataAndUpdate(); + +protected: + QList calculateValueOptions( const caf::PdmFieldHandle* fieldNeedingOptions ) override; + void defineUiOrdering( QString uiConfigName, caf::PdmUiOrdering& uiOrdering ) override; + void fieldChangedByUi( const caf::PdmFieldHandle* changedField, const QVariant& oldValue, const QVariant& newValue ) override; + + caf::PdmPtrField m_ensembleFractureStatistics; + caf::PdmField> m_property; + caf::PdmField m_numBins; +}; diff --git a/ApplicationLibCode/ProjectDataModel/RimContextCommandBuilder.cpp b/ApplicationLibCode/ProjectDataModel/RimContextCommandBuilder.cpp index 94d843a01b..0bf60e71c2 100644 --- a/ApplicationLibCode/ProjectDataModel/RimContextCommandBuilder.cpp +++ b/ApplicationLibCode/ProjectDataModel/RimContextCommandBuilder.cpp @@ -160,10 +160,6 @@ #include "RimWellPltPlot.h" #include "RimWellRftPlot.h" -#ifdef USE_QTCHARTS -#include "RimEnsembleFractureStatisticsPlotCollection.h" -#endif - #include "RiuMainWindow.h" #include "OctaveScriptCommands/RicExecuteScriptForCasesFeature.h" @@ -656,12 +652,6 @@ caf::CmdFeatureMenuBuilder RimContextCommandBuilder::commandsFromSelection() { menuBuilder << "RicCreateSaturationPressurePlotsFeature"; } -#ifdef USE_QTCHARTS - else if ( dynamic_cast( firstUiItem ) ) - { - menuBuilder << "RicCreateEnsembleFractureStatisticsPlotFeature"; - } -#endif else if ( dynamic_cast( firstUiItem ) ) { menuBuilder << "RicPasteGridCrossPlotDataSetFeature"; @@ -996,7 +986,7 @@ caf::CmdFeatureMenuBuilder RimContextCommandBuilder::commandsFromSelection() menuBuilder.subMenuStart( "New Histogram Curve" ); // TODO: make an enum of these? - std::vector curveTypes = { "Ensemble Parameter", "Grid Statistics", "Summary Vector" }; + std::vector curveTypes = { "Ensemble Parameter", "Grid Statistics", "Summary Vector", "Ensemble Fracture Statistics" }; for ( const QString& curveType : curveTypes ) { diff --git a/ApplicationLibCode/ProjectDataModel/RimEclipseView.cpp b/ApplicationLibCode/ProjectDataModel/RimEclipseView.cpp index c4396c9985..f88d34cf7f 100644 --- a/ApplicationLibCode/ProjectDataModel/RimEclipseView.cpp +++ b/ApplicationLibCode/ProjectDataModel/RimEclipseView.cpp @@ -95,10 +95,6 @@ #include "RimWellMeasurementInViewCollection.h" #include "RimWellPathCollection.h" -#ifdef USE_QTCHARTS -#include "RimGridStatisticsPlot.h" -#endif - #include "Riu3dSelectionManager.h" #include "RiuMainWindow.h" #include "RiuTools.h" @@ -851,17 +847,6 @@ void RimEclipseView::onCreateDisplayModel() } } -#ifdef USE_QTCHARTS - std::vector gridStatisticsPlots = objectsWithReferringPtrFieldsOfType(); - for ( auto gridStatisticsPlot : gridStatisticsPlots ) - { - if ( gridStatisticsPlot != nullptr ) - { - gridStatisticsPlot->cellFilterViewUpdated(); - } - } -#endif - std::vector gridStatisticsHistogramDataSources = objectsWithReferringPtrFieldsOfType(); for ( auto gridStatisticsPlot : gridStatisticsHistogramDataSources ) diff --git a/ApplicationLibCode/ProjectDataModel/RimMainPlotCollection.cpp b/ApplicationLibCode/ProjectDataModel/RimMainPlotCollection.cpp index d774140da3..3e6c0f3df1 100644 --- a/ApplicationLibCode/ProjectDataModel/RimMainPlotCollection.cpp +++ b/ApplicationLibCode/ProjectDataModel/RimMainPlotCollection.cpp @@ -113,12 +113,6 @@ RimMainPlotCollection::RimMainPlotCollection() CAF_PDM_InitFieldNoDefault( &m_histogramMultiPlotCollection, "HistogramMultiPlotCollection", "" ); -#ifdef USE_QTCHARTS - CAF_PDM_InitFieldNoDefault( &m_gridStatisticsPlotCollection, "GridStatisticsPlotCollection", "" ); - - CAF_PDM_InitFieldNoDefault( &m_ensembleFractureStatisticsPlotCollection, "EnsembleFractureStatisticsPlotCollection", "" ); -#endif - m_wellLogPlotCollection = new RimWellLogPlotCollection(); m_rftPlotCollection = new RimRftPlotCollection(); m_pltPlotCollection = new RimPltPlotCollection(); @@ -134,10 +128,12 @@ RimMainPlotCollection::RimMainPlotCollection() m_stimPlanModelPlotCollection = new RimStimPlanModelPlotCollection; m_vfpPlotCollection = new RimVfpPlotCollection(); m_histogramMultiPlotCollection = new RimHistogramMultiPlotCollection(); -#ifdef USE_QTCHARTS - m_gridStatisticsPlotCollection = new RimGridStatisticsPlotCollection; - m_ensembleFractureStatisticsPlotCollection = new RimEnsembleFractureStatisticsPlotCollection; -#endif + + CAF_PDM_InitFieldNoDefault( &m_gridStatisticsPlotCollection_OBSOLETE, "GridStatisticsPlotCollection", "" ); + m_gridStatisticsPlotCollection_OBSOLETE = new RimGridStatisticsPlotCollection; + + CAF_PDM_InitFieldNoDefault( &m_ensembleFractureStatisticsPlotCollection_OBSOLETE, "EnsembleFractureStatisticsPlotCollection", "" ); + m_ensembleFractureStatisticsPlotCollection_OBSOLETE = new RimEnsembleFractureStatisticsPlotCollection; CAF_PDM_InitFieldNoDefault( &m_summaryPlotCollection_OBSOLETE, "SummaryPlotCollection", "Summary Plots" ); m_summaryPlotCollection_OBSOLETE.xmlCapability()->setIOWritable( false ); @@ -344,7 +340,7 @@ RimHistogramMultiPlotCollection* RimMainPlotCollection::histogramMultiPlotCollec //-------------------------------------------------------------------------------------------------- RimGridStatisticsPlotCollection* RimMainPlotCollection::gridStatisticsPlotCollection() const { - return m_gridStatisticsPlotCollection(); + return m_gridStatisticsPlotCollection_OBSOLETE(); } //-------------------------------------------------------------------------------------------------- @@ -352,7 +348,7 @@ RimGridStatisticsPlotCollection* RimMainPlotCollection::gridStatisticsPlotCollec //-------------------------------------------------------------------------------------------------- RimEnsembleFractureStatisticsPlotCollection* RimMainPlotCollection::ensembleFractureStatisticsPlotCollection() const { - return m_ensembleFractureStatisticsPlotCollection(); + return m_ensembleFractureStatisticsPlotCollection_OBSOLETE(); } #endif diff --git a/ApplicationLibCode/ProjectDataModel/RimMainPlotCollection.h b/ApplicationLibCode/ProjectDataModel/RimMainPlotCollection.h index 838722313f..5a11890ec4 100644 --- a/ApplicationLibCode/ProjectDataModel/RimMainPlotCollection.h +++ b/ApplicationLibCode/ProjectDataModel/RimMainPlotCollection.h @@ -125,10 +125,9 @@ private: caf::PdmChildField m_stimPlanModelPlotCollection; caf::PdmChildField m_vfpPlotCollection; caf::PdmChildField m_histogramMultiPlotCollection; -#ifdef USE_QTCHARTS - caf::PdmChildField m_gridStatisticsPlotCollection; - caf::PdmChildField m_ensembleFractureStatisticsPlotCollection; -#endif + + caf::PdmChildField m_gridStatisticsPlotCollection_OBSOLETE; + caf::PdmChildField m_ensembleFractureStatisticsPlotCollection_OBSOLETE; caf::PdmField m_show; diff --git a/ApplicationLibCode/ProjectDataModel/RimProject.cpp b/ApplicationLibCode/ProjectDataModel/RimProject.cpp index d5182414c8..1bef518123 100644 --- a/ApplicationLibCode/ProjectDataModel/RimProject.cpp +++ b/ApplicationLibCode/ProjectDataModel/RimProject.cpp @@ -102,12 +102,6 @@ #include "VerticalFlowPerformance/RimVfpDataCollection.h" #include "VerticalFlowPerformance/RimVfpPlotCollection.h" -#ifdef USE_QTCHARTS -#include "RimEnsembleFractureStatisticsPlotCollection.h" -#include "RimGridStatisticsPlot.h" -#include "RimGridStatisticsPlotCollection.h" -#endif - #include "RiuPlotMainWindow.h" #include "cafCmdFeatureMenuBuilder.h" @@ -1469,17 +1463,6 @@ void RimProject::defineUiTreeOrdering( caf::PdmUiTreeOrdering& uiTreeOrdering, Q uiTreeOrdering.add( m_mainPlotCollection->histogramMultiPlotCollection() ); } -#ifdef USE_QTCHARTS - if ( m_mainPlotCollection->gridStatisticsPlotCollection() || m_mainPlotCollection->ensembleFractureStatisticsPlotCollection() ) - { - auto statisticsItemCollection = uiTreeOrdering.add( "Statistics Plots", ":/Folder.png" ); - if ( m_mainPlotCollection->gridStatisticsPlotCollection() ) - statisticsItemCollection->add( m_mainPlotCollection->gridStatisticsPlotCollection() ); - - if ( m_mainPlotCollection->ensembleFractureStatisticsPlotCollection() ) - statisticsItemCollection->add( m_mainPlotCollection->ensembleFractureStatisticsPlotCollection() ); - } -#endif uiTreeOrdering.add( automationSettings() ); } }