From 860b51931cc3091e7862464a7cbf65aa63353f43 Mon Sep 17 00:00:00 2001
From: Magne Sjaastad <magne.sjaastad@ceetronsolutions.com>
Date: Wed, 14 Dec 2016 07:15:44 +0100
Subject: [PATCH] #1025 Removed unsused code and renamed to
isWellPipe/SpheresVisible
---
.../RivReservoirWellSpheresPartMgr.cpp | 38 ++--
.../RivReservoirWellSpheresPartMgr.h | 6 +-
.../RivWellSpheresPartMgr.cpp | 4 +-
.../RivWellSpheresPartMgr.h | 4 -
.../ProjectDataModel/RimEclipseView.cpp | 4 +-
.../ProjectDataModel/RimEclipseWell.cpp | 194 +++++++++---------
.../ProjectDataModel/RimEclipseWell.h | 8 +-
.../RimEclipseWellCollection.cpp | 4 +-
8 files changed, 114 insertions(+), 148 deletions(-)
diff --git a/ApplicationCode/ModelVisualization/RivReservoirWellSpheresPartMgr.cpp b/ApplicationCode/ModelVisualization/RivReservoirWellSpheresPartMgr.cpp
index 750273451d..60a707dd50 100644
--- a/ApplicationCode/ModelVisualization/RivReservoirWellSpheresPartMgr.cpp
+++ b/ApplicationCode/ModelVisualization/RivReservoirWellSpheresPartMgr.cpp
@@ -47,6 +47,15 @@ RivReservoirWellSpheresPartMgr::~RivReservoirWellSpheresPartMgr()
}
+
+//--------------------------------------------------------------------------------------------------
+///
+//--------------------------------------------------------------------------------------------------
+void RivReservoirWellSpheresPartMgr::clearGeometryCache()
+{
+ m_wellSpheresPartMgrs.clear();
+}
+
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
@@ -58,6 +67,8 @@ void RivReservoirWellSpheresPartMgr::appendDynamicGeometryPartsToModel(cvf::Mode
if (m_reservoirView->wellCollection()->wells.size() != m_wellSpheresPartMgrs.size())
{
+ clearGeometryCache();
+
for (RimEclipseWell* rimWell : m_reservoirView->wellCollection()->wells())
{
RivWellSpheresPartMgr* wppmgr = new RivWellSpheresPartMgr(m_reservoirView, rimWell);
@@ -67,33 +78,8 @@ void RivReservoirWellSpheresPartMgr::appendDynamicGeometryPartsToModel(cvf::Mode
for (size_t i = 0; i < m_wellSpheresPartMgrs.size(); i++)
{
-
- bool showGeo = false;
-
-
- if (m_reservoirView->wellCollection()->wells[i]->showWell())
+ if (m_reservoirView->wellCollection()->wells[i]->isWellSpheresVisible(frameIndex))
{
-
- if (m_reservoirView->wellCollection->wellSphereVisibility == RimEclipseWellCollection::PIPES_FORCE_ALL_ON)
- {
- showGeo = true;
- }
-
- else if (m_reservoirView->wellCollection->wellSphereVisibility == RimEclipseWellCollection::PIPES_INDIVIDUALLY && m_reservoirView->wellCollection()->wells[i]->showWellSpheres() )
- {
- showGeo = true;
- }
-
- else if (m_reservoirView->wellCollection->wellSphereVisibility == RimEclipseWellCollection::PIPES_OPEN_IN_VISIBLE_CELLS && m_reservoirView->wellCollection->wells[i]->visibleCellsInstersectsWell(frameIndex))
- {
- showGeo = true;
- }
-
- }
-
-
- if (showGeo)
- {
m_wellSpheresPartMgrs.at(i)->appendDynamicGeometryPartsToModel(model, frameIndex);
}
}
diff --git a/ApplicationCode/ModelVisualization/RivReservoirWellSpheresPartMgr.h b/ApplicationCode/ModelVisualization/RivReservoirWellSpheresPartMgr.h
index fd73a75783..d63d430b78 100644
--- a/ApplicationCode/ModelVisualization/RivReservoirWellSpheresPartMgr.h
+++ b/ApplicationCode/ModelVisualization/RivReservoirWellSpheresPartMgr.h
@@ -25,7 +25,6 @@
namespace cvf
{
- class Transform;
class ModelBasicList;
}
@@ -38,14 +37,11 @@ public:
RivReservoirWellSpheresPartMgr(RimEclipseView* reservoirView);
~RivReservoirWellSpheresPartMgr();
+ void clearGeometryCache();
void appendDynamicGeometryPartsToModel(cvf::ModelBasicList* model, size_t frameIndex);
-private:
-
-
private:
caf::PdmPointer<RimEclipseView> m_reservoirView;
cvf::Collection< RivWellSpheresPartMgr > m_wellSpheresPartMgrs;
-
};
diff --git a/ApplicationCode/ModelVisualization/RivWellSpheresPartMgr.cpp b/ApplicationCode/ModelVisualization/RivWellSpheresPartMgr.cpp
index 786d31195c..71d94615ca 100644
--- a/ApplicationCode/ModelVisualization/RivWellSpheresPartMgr.cpp
+++ b/ApplicationCode/ModelVisualization/RivWellSpheresPartMgr.cpp
@@ -18,6 +18,8 @@
#include "RivWellSpheresPartMgr.h"
+#include "RiaApplication.h"
+
#include "RigCaseData.h"
#include "RigMainGrid.h"
@@ -28,7 +30,6 @@
#include "RiuViewer.h"
-
#include "cafDisplayCoordTransform.h"
#include "cafEffectGenerator.h"
#include "cafPdmFieldCvfColor.h"
@@ -44,7 +45,6 @@
#include "cvfGeometryBuilderTriangles.h"
#include "cvfOpenGLResourceManager.h"
#include "cvfShaderProgram.h"
-#include "RiaApplication.h"
//--------------------------------------------------------------------------------------------------
///
diff --git a/ApplicationCode/ModelVisualization/RivWellSpheresPartMgr.h b/ApplicationCode/ModelVisualization/RivWellSpheresPartMgr.h
index 609e14901f..67b9da37b8 100644
--- a/ApplicationCode/ModelVisualization/RivWellSpheresPartMgr.h
+++ b/ApplicationCode/ModelVisualization/RivWellSpheresPartMgr.h
@@ -52,8 +52,6 @@ public:
RivWellSpheresPartMgr(RimEclipseView* reservoirView, RimEclipseWell* well);
~RivWellSpheresPartMgr();
- void scheduleGeometryRegen() { m_needsTransformUpdate = true; }
-
void appendDynamicGeometryPartsToModel(cvf::ModelBasicList* model, size_t frameIndex);
private:
@@ -63,6 +61,4 @@ private:
private:
caf::PdmPointer<RimEclipseView> m_rimReservoirView;
caf::PdmPointer<RimEclipseWell> m_rimWell;
-
- bool m_needsTransformUpdate;
};
diff --git a/ApplicationCode/ProjectDataModel/RimEclipseView.cpp b/ApplicationCode/ProjectDataModel/RimEclipseView.cpp
index 3cbc4177ac..7af603aeec 100644
--- a/ApplicationCode/ProjectDataModel/RimEclipseView.cpp
+++ b/ApplicationCode/ProjectDataModel/RimEclipseView.cpp
@@ -131,7 +131,6 @@ RimEclipseView::RimEclipseView()
m_reservoirGridPartManager = new RivReservoirViewPartMgr(this);
m_pipesPartManager = new RivReservoirPipesPartMgr(this);
m_wellSpheresPartManager = new RivReservoirWellSpheresPartMgr(this);
-
m_reservoir = NULL;
}
@@ -666,7 +665,6 @@ void RimEclipseView::updateCurrentTimeStep()
m_pipesPartManager->appendDynamicGeometryPartsToModel(wellPipeModelBasicList.p(), m_currentTimeStep);
m_wellSpheresPartManager->appendDynamicGeometryPartsToModel(wellPipeModelBasicList.p(), m_currentTimeStep);
-
wellPipeModelBasicList->updateBoundingBoxesRecursive();
this->removeModelByName(frameScene, wellPipeModelBasicList->name());
@@ -900,6 +898,7 @@ void RimEclipseView::scheduleReservoirGridGeometryRegen()
void RimEclipseView::schedulePipeGeometryRegen()
{
m_pipesPartManager->scheduleGeometryRegen();
+ m_wellSpheresPartManager->clearGeometryCache();
}
@@ -1308,6 +1307,7 @@ void RimEclipseView::updateDisplayModelForWellResults()
{
m_reservoirGridPartManager->clearGeometryCache();
m_pipesPartManager->clearGeometryCache();
+ m_wellSpheresPartManager->clearGeometryCache();
syncronizeWellsWithResults();
diff --git a/ApplicationCode/ProjectDataModel/RimEclipseWell.cpp b/ApplicationCode/ProjectDataModel/RimEclipseWell.cpp
index da0654dbd7..e9a26ce99f 100644
--- a/ApplicationCode/ProjectDataModel/RimEclipseWell.cpp
+++ b/ApplicationCode/ProjectDataModel/RimEclipseWell.cpp
@@ -148,106 +148,6 @@ caf::PdmFieldHandle* RimEclipseWell::objectToggleField()
return &showWell;
}
-//--------------------------------------------------------------------------------------------------
-///
-//--------------------------------------------------------------------------------------------------
-bool RimEclipseWell::calculateWellPipeVisibility(size_t frameIndex)
-{
- if (m_reservoirView == NULL) return false;
- if (this->wellResults() == NULL) return false;
-
- if (frameIndex >= this->wellResults()->m_resultTimeStepIndexToWellTimeStepIndex.size())
- {
- return false;
- }
-
- size_t wellTimeStepIndex = this->wellResults()->m_resultTimeStepIndexToWellTimeStepIndex[frameIndex];
- if (wellTimeStepIndex == cvf::UNDEFINED_SIZE_T)
- {
- return false;
- }
-
- if (!m_reservoirView->wellCollection()->isActive())
- return false;
-
- if (m_reservoirView->wellCollection()->wellPipeVisibility() == RimEclipseWellCollection::PIPES_FORCE_ALL_ON)
- return true;
-
- if (m_reservoirView->wellCollection()->wellPipeVisibility() == RimEclipseWellCollection::PIPES_FORCE_ALL_OFF)
- return false;
-
- if ( this->showWell() == false )
- return false;
-
- if ( this->showWellPipes() == false )
- return false;
-
- if (m_reservoirView->wellCollection()->wellPipeVisibility() == RimEclipseWellCollection::PIPES_INDIVIDUALLY)
- return true;
-
- if (m_reservoirView->crossSectionCollection()->hasActiveIntersectionForSimulationWell(this))
- return true;
-
- if (m_reservoirView->wellCollection()->wellPipeVisibility() == RimEclipseWellCollection::PIPES_OPEN_IN_VISIBLE_CELLS)
- {
- return visibleCellsInstersectsWell(frameIndex);
- }
-
- CVF_ASSERT(false); // Never end here. have you added new pipe visibility modes ?
-
- return false;
-}
-
-//--------------------------------------------------------------------------------------------------
-///
-//--------------------------------------------------------------------------------------------------
-bool RimEclipseWell::calculateWellSphereVisibility(size_t frameIndex)
-{
- if (m_reservoirView == NULL) return false;
- if (this->wellResults() == NULL) return false;
-
- if (frameIndex >= this->wellResults()->m_resultTimeStepIndexToWellTimeStepIndex.size())
- {
- return false;
- }
-
- size_t wellTimeStepIndex = this->wellResults()->m_resultTimeStepIndexToWellTimeStepIndex[frameIndex];
- if (wellTimeStepIndex == cvf::UNDEFINED_SIZE_T)
- {
- return false;
- }
-
- if (!m_reservoirView->wellCollection()->isActive())
- return false;
-
- if (m_reservoirView->wellCollection()->wellSphereVisibility() == RimEclipseWellCollection::PIPES_FORCE_ALL_ON)
- return true;
-
- if (m_reservoirView->wellCollection()->wellSphereVisibility() == RimEclipseWellCollection::PIPES_FORCE_ALL_OFF)
- return false;
-
- if (this->showWell() == false)
- return false;
-
- if (this->showWellSpheres() == false)
- return false;
-
- if (m_reservoirView->wellCollection()->wellSphereVisibility() == RimEclipseWellCollection::PIPES_INDIVIDUALLY)
- return true;
-
- if (m_reservoirView->crossSectionCollection()->hasActiveIntersectionForSimulationWell(this))
- return true;
-
- if (m_reservoirView->wellCollection()->wellSphereVisibility() == RimEclipseWellCollection::PIPES_OPEN_IN_VISIBLE_CELLS)
- {
- return visibleCellsInstersectsWell(frameIndex);
- }
-
- CVF_ASSERT(false); // Never end here. have you added new pipe visibility modes ?
-
- return false;
-}
-
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
@@ -326,7 +226,99 @@ void RimEclipseWell::defineUiOrdering(QString uiConfigName, caf::PdmUiOrdering&
//--------------------------------------------------------------------------------------------------
bool RimEclipseWell::isWellPipeVisible(size_t frameIndex)
{
- return calculateWellPipeVisibility(frameIndex);
+ if (m_reservoirView == NULL) return false;
+ if (this->wellResults() == NULL) return false;
+
+ if (frameIndex >= this->wellResults()->m_resultTimeStepIndexToWellTimeStepIndex.size())
+ {
+ return false;
+ }
+
+ size_t wellTimeStepIndex = this->wellResults()->m_resultTimeStepIndexToWellTimeStepIndex[frameIndex];
+ if (wellTimeStepIndex == cvf::UNDEFINED_SIZE_T)
+ {
+ return false;
+ }
+
+ if (!m_reservoirView->wellCollection()->isActive())
+ return false;
+
+ if (m_reservoirView->wellCollection()->wellPipeVisibility() == RimEclipseWellCollection::PIPES_FORCE_ALL_ON)
+ return true;
+
+ if (m_reservoirView->wellCollection()->wellPipeVisibility() == RimEclipseWellCollection::PIPES_FORCE_ALL_OFF)
+ return false;
+
+ if (this->showWell() == false)
+ return false;
+
+ if (this->showWellPipes() == false)
+ return false;
+
+ if (m_reservoirView->wellCollection()->wellPipeVisibility() == RimEclipseWellCollection::PIPES_INDIVIDUALLY)
+ return true;
+
+ if (m_reservoirView->crossSectionCollection()->hasActiveIntersectionForSimulationWell(this))
+ return true;
+
+ if (m_reservoirView->wellCollection()->wellPipeVisibility() == RimEclipseWellCollection::PIPES_OPEN_IN_VISIBLE_CELLS)
+ {
+ return visibleCellsInstersectsWell(frameIndex);
+ }
+
+ CVF_ASSERT(false); // Never end here. have you added new pipe visibility modes ?
+
+ return false;
+}
+
+//--------------------------------------------------------------------------------------------------
+///
+//--------------------------------------------------------------------------------------------------
+bool RimEclipseWell::isWellSpheresVisible(size_t frameIndex)
+{
+ if (m_reservoirView == NULL) return false;
+ if (this->wellResults() == NULL) return false;
+
+ if (frameIndex >= this->wellResults()->m_resultTimeStepIndexToWellTimeStepIndex.size())
+ {
+ return false;
+ }
+
+ size_t wellTimeStepIndex = this->wellResults()->m_resultTimeStepIndexToWellTimeStepIndex[frameIndex];
+ if (wellTimeStepIndex == cvf::UNDEFINED_SIZE_T)
+ {
+ return false;
+ }
+
+ if (!m_reservoirView->wellCollection()->isActive())
+ return false;
+
+ if (m_reservoirView->wellCollection()->wellSphereVisibility() == RimEclipseWellCollection::PIPES_FORCE_ALL_ON)
+ return true;
+
+ if (m_reservoirView->wellCollection()->wellSphereVisibility() == RimEclipseWellCollection::PIPES_FORCE_ALL_OFF)
+ return false;
+
+ if (this->showWell() == false)
+ return false;
+
+ if (this->showWellSpheres() == false)
+ return false;
+
+ if (m_reservoirView->wellCollection()->wellSphereVisibility() == RimEclipseWellCollection::PIPES_INDIVIDUALLY)
+ return true;
+
+ if (m_reservoirView->crossSectionCollection()->hasActiveIntersectionForSimulationWell(this))
+ return true;
+
+ if (m_reservoirView->wellCollection()->wellSphereVisibility() == RimEclipseWellCollection::PIPES_OPEN_IN_VISIBLE_CELLS)
+ {
+ return visibleCellsInstersectsWell(frameIndex);
+ }
+
+ CVF_ASSERT(false); // Never end here. have you added new pipe visibility modes ?
+
+ return false;
}
//--------------------------------------------------------------------------------------------------
diff --git a/ApplicationCode/ProjectDataModel/RimEclipseWell.h b/ApplicationCode/ProjectDataModel/RimEclipseWell.h
index cfe9ae2807..ae8a05dace 100644
--- a/ApplicationCode/ProjectDataModel/RimEclipseWell.h
+++ b/ApplicationCode/ProjectDataModel/RimEclipseWell.h
@@ -53,13 +53,9 @@ public:
size_t resultWellIndex() { return m_resultWellIndex; }
bool isWellPipeVisible(size_t frameIndex);
+ bool isWellSpheresVisible(size_t frameIndex);
- bool calculateWellPipeVisibility(size_t frameIndex);
- bool calculateWellSphereVisibility(size_t frameIndex);
-
- bool visibleCellsInstersectsWell(size_t frameIndex);
-
- //Trengs det en calculateWellGeometryVisibility??
+ bool visibleCellsInstersectsWell(size_t frameIndex);
virtual caf::PdmFieldHandle* userDescriptionField();
virtual caf::PdmFieldHandle* objectToggleField();
diff --git a/ApplicationCode/ProjectDataModel/RimEclipseWellCollection.cpp b/ApplicationCode/ProjectDataModel/RimEclipseWellCollection.cpp
index c571d6c5f4..6194a1d2bd 100644
--- a/ApplicationCode/ProjectDataModel/RimEclipseWellCollection.cpp
+++ b/ApplicationCode/ProjectDataModel/RimEclipseWellCollection.cpp
@@ -346,8 +346,8 @@ void RimEclipseWellCollection::calculateWellGeometryVisibility(size_t frameIndex
for (size_t i = 0; i < wells().size(); ++i)
{
- bool wellPipeVisible = wells[i]->calculateWellPipeVisibility(frameIndex);
- bool wellSphereVisible = wells[i]->calculateWellSphereVisibility(frameIndex);
+ bool wellPipeVisible = wells[i]->isWellPipeVisible(frameIndex);
+ bool wellSphereVisible = wells[i]->isWellSpheresVisible(frameIndex);
m_framesOfResultWellPipeVisibilities[frameIndex][wells[i]->resultWellIndex()] = wellPipeVisible || wellSphereVisible;
}