diff --git a/ApplicationCode/ModelVisualization/RivReservoirFaultsPartMgr.cpp b/ApplicationCode/ModelVisualization/RivReservoirFaultsPartMgr.cpp
index 7a418eb3ba..7ea48d38fd 100644
--- a/ApplicationCode/ModelVisualization/RivReservoirFaultsPartMgr.cpp
+++ b/ApplicationCode/ModelVisualization/RivReservoirFaultsPartMgr.cpp
@@ -25,10 +25,11 @@
#include "cafPdmFieldCvfColor.h"
-#include "RimFaultCollection.h"
#include "RigMainGrid.h"
-#include "RimReservoirView.h"
+#include "RimFaultCollection.h"
#include "RimFaultResultSlot.h"
+#include "RimReservoirView.h"
+#include "RimResultSlot.h"
//--------------------------------------------------------------------------------------------------
@@ -182,14 +183,13 @@ void RivReservoirFaultsPartMgr::updateColors(size_t timeStepIndex, RimResultSlot
{
RimFault* rimFault = faultCollection->faults[i];
- if (m_reservoirView->faultResultSettings()->showCustomFaultResult() &&
- m_reservoirView->faultResultSettings()->visualizationMode() == RimFaultResultSlot::FAULT_COLOR)
+ if (cellResultSlot && (cellResultSlot->hasResult() || cellResultSlot->isTernarySaturationSelected()) )
{
- m_faultParts[i]->applySingleColorEffect();
+ m_faultParts[i]->updateCellResultColor(timeStepIndex, cellResultSlot);
}
else
{
- m_faultParts[i]->updateCellResultColor(timeStepIndex, cellResultSlot);
+ m_faultParts[i]->applySingleColorEffect();
}
}
}
diff --git a/ApplicationCode/ProjectDataModel/Rim3dOverlayInfoConfig.cpp b/ApplicationCode/ProjectDataModel/Rim3dOverlayInfoConfig.cpp
index 33a7f6a880..40a464e9f8 100644
--- a/ApplicationCode/ProjectDataModel/Rim3dOverlayInfoConfig.cpp
+++ b/ApplicationCode/ProjectDataModel/Rim3dOverlayInfoConfig.cpp
@@ -160,7 +160,7 @@ void Rim3dOverlayInfoConfig::update3DInfo()
infoText += QString("
Min | P10 | Mean | P90 | Max |
"
"%1 | %2 | %3 | %4 | %5 |
").arg(min).arg(p10).arg(mean).arg(p90).arg(max);
- if (m_reservoirView->faultResultSettings()->visualizationMode() != RimFaultResultSlot::FAULT_COLOR)
+ if (m_reservoirView->faultResultSettings()->hasValidCustomResult())
{
QString faultMapping;
bool isShowingGrid = m_reservoirView->faultCollection()->isGridVisualizationMode();
@@ -185,10 +185,7 @@ void Rim3dOverlayInfoConfig::update3DInfo()
}
infoText += QString("Fault results: %1
").arg(faultMapping);
- }
- if (m_reservoirView->faultResultSettings()->customFaultResult())
- {
infoText += QString("Fault Property: %1
").arg(m_reservoirView->faultResultSettings()->customFaultResult()->resultVariable());
}
}
diff --git a/ApplicationCode/ProjectDataModel/RimFaultResultSlot.cpp b/ApplicationCode/ProjectDataModel/RimFaultResultSlot.cpp
index dfdbcadf48..7bb41bb852 100644
--- a/ApplicationCode/ProjectDataModel/RimFaultResultSlot.cpp
+++ b/ApplicationCode/ProjectDataModel/RimFaultResultSlot.cpp
@@ -24,16 +24,6 @@
#include "RimUiTreeModelPdm.h"
-namespace caf
-{
- template<>
- void AppEnum< RimFaultResultSlot::FaultVisualizationMode >::setUp()
- {
- addItem(RimFaultResultSlot::FAULT_COLOR, "FAULT_COLOR", "Fault Colors");
- addItem(RimFaultResultSlot::CUSTOM_RESULT_MAPPING, "CUSTOM_RESULT_MAPPING", "Custom Cell Results");
- setDefault(RimFaultResultSlot::FAULT_COLOR);
- }
-}
CAF_PDM_SOURCE_INIT(RimFaultResultSlot, "RimFaultResultSlot");
@@ -47,7 +37,6 @@ RimFaultResultSlot::RimFaultResultSlot()
CAF_PDM_InitField(&showCustomFaultResult, "ShowCustomFaultResult", false, "Show Custom Fault Result", "", "", "");
showCustomFaultResult.setUiHidden(true);
- CAF_PDM_InitField(&visualizationMode, "VisualizationMode", caf::AppEnum(RimFaultResultSlot::FAULT_COLOR), "Fault Color Mapping", "", "", "");
CAF_PDM_InitField(&showNNCs, "ShowNNCs", false, "Show NNCs", "", "", "");
CAF_PDM_InitFieldNoDefault(&m_customFaultResult, "CustomResultSlot", "Custom Fault Result", ":/CellResult.png", "", "");
@@ -88,13 +77,6 @@ void RimFaultResultSlot::fieldChangedByUi(const caf::PdmFieldHandle* changedFiel
m_customFaultResult->fieldChangedByUi(changedField, oldValue, newValue);
- if (changedField == &visualizationMode)
- {
- updateFieldVisibility();
-
- RiuMainWindow::instance()->uiPdmModel()->updateUiSubTree(this);
- }
-
if (changedField == &m_customFaultResult->m_resultVariableUiField)
{
RiuMainWindow::instance()->uiPdmModel()->updateUiSubTree(this);
@@ -127,12 +109,7 @@ void RimFaultResultSlot::updateFieldVisibility()
//--------------------------------------------------------------------------------------------------
RimResultSlot* RimFaultResultSlot::customFaultResult()
{
- if (showCustomFaultResult() && this->visualizationMode() == CUSTOM_RESULT_MAPPING)
- {
- return this->m_customFaultResult();
- }
-
- return NULL;
+ return this->m_customFaultResult();
}
//--------------------------------------------------------------------------------------------------
@@ -148,16 +125,12 @@ caf::PdmFieldHandle* RimFaultResultSlot::objectToggleField()
//--------------------------------------------------------------------------------------------------
void RimFaultResultSlot::defineUiOrdering(QString uiConfigName, caf::PdmUiOrdering& uiOrdering)
{
- uiOrdering.add(&visualizationMode);
uiOrdering.add(&showNNCs);
- if (visualizationMode == CUSTOM_RESULT_MAPPING)
- {
- caf::PdmUiGroup* group1 = uiOrdering.addNewGroup("Result");
- group1->add(&(m_customFaultResult->m_resultTypeUiField));
- group1->add(&(m_customFaultResult->m_porosityModelUiField));
- group1->add(&(m_customFaultResult->m_resultVariableUiField));
- }
+ caf::PdmUiGroup* group1 = uiOrdering.addNewGroup("Result");
+ group1->add(&(m_customFaultResult->m_resultTypeUiField));
+ group1->add(&(m_customFaultResult->m_porosityModelUiField));
+ group1->add(&(m_customFaultResult->m_resultVariableUiField));
}
//--------------------------------------------------------------------------------------------------
@@ -168,3 +141,16 @@ QList RimFaultResultSlot::calculateValueOptions(const ca
return m_customFaultResult->calculateValueOptions(fieldNeedingOptions, useOptionsOnly);
}
+//--------------------------------------------------------------------------------------------------
+///
+//--------------------------------------------------------------------------------------------------
+bool RimFaultResultSlot::hasValidCustomResult()
+{
+ if (m_customFaultResult->hasResult() || m_customFaultResult->isTernarySaturationSelected())
+ {
+ return true;
+ }
+
+ return false;
+}
+
diff --git a/ApplicationCode/ProjectDataModel/RimFaultResultSlot.h b/ApplicationCode/ProjectDataModel/RimFaultResultSlot.h
index 07d4be9a53..ccf3d410d8 100644
--- a/ApplicationCode/ProjectDataModel/RimFaultResultSlot.h
+++ b/ApplicationCode/ProjectDataModel/RimFaultResultSlot.h
@@ -32,12 +32,6 @@ class RimReservoirView;
class RimFaultResultSlot : public caf::PdmObject
{
CAF_PDM_HEADER_INIT;
-public:
- enum FaultVisualizationMode
- {
- FAULT_COLOR,
- CUSTOM_RESULT_MAPPING
- };
public:
RimFaultResultSlot();
@@ -45,13 +39,13 @@ public:
void setReservoirView(RimReservoirView* ownerReservoirView);
- caf::PdmField< caf::AppEnum< FaultVisualizationMode > > visualizationMode;
caf::PdmField showNNCs;
caf::PdmField showCustomFaultResult;
+ bool hasValidCustomResult();
+ RimResultSlot* customFaultResult();
- RimResultSlot* customFaultResult();
- void updateFieldVisibility();
+ void updateFieldVisibility();
virtual QList calculateValueOptions( const caf::PdmFieldHandle* fieldNeedingOptions, bool * useOptionsOnly );
diff --git a/ApplicationCode/ProjectDataModel/RimReservoirView.cpp b/ApplicationCode/ProjectDataModel/RimReservoirView.cpp
index ad6dcd7d65..b56a783381 100644
--- a/ApplicationCode/ProjectDataModel/RimReservoirView.cpp
+++ b/ApplicationCode/ProjectDataModel/RimReservoirView.cpp
@@ -921,10 +921,7 @@ void RimReservoirView::loadDataAndUpdate()
CVF_ASSERT(this->cellEdgeResult() != NULL);
this->cellEdgeResult()->loadResult();
- if (this->faultResultSettings()->customFaultResult())
- {
- this->faultResultSettings()->customFaultResult()->loadResult();
- }
+ this->faultResultSettings()->customFaultResult()->loadResult();
this->faultResultSettings()->updateFieldVisibility();
updateViewerWidget();
@@ -1100,7 +1097,7 @@ void RimReservoirView::appendCellResultInfo(size_t gridIndex, size_t cellIndex,
if (fault)
{
resultInfoText->append(QString("\nFault Name: %1\n").arg(fault->name()));
- if (this->faultResultSettings()->customFaultResult())
+ if (this->faultResultSettings()->hasValidCustomResult())
{
resultInfoText->push_back("Fault result data:\n");
appendTextFromResultSlot(eclipseCase, gridIndex, cellIndex, this->m_currentTimeStep, this->faultResultSettings()->customFaultResult(), resultInfoText);
@@ -1321,7 +1318,7 @@ void RimReservoirView::updateLegends()
CVF_ASSERT(results);
updateMinMaxValuesAndAddLegendToView(QString("Cell Results: \n"), this->cellResult(), results);
- if (this->faultResultSettings()->customFaultResult())
+ if (this->faultResultSettings()->hasValidCustomResult())
{
updateMinMaxValuesAndAddLegendToView(QString("Fault Results: \n"), this->faultResultSettings()->customFaultResult(), results);
}
@@ -1986,19 +1983,14 @@ void RimReservoirView::updateFaultColors()
std::vector faultGeometriesToRecolor = visibleFaultGeometryTypes();
RimResultSlot* faultResultSlot = this->cellResult();
- if (this->faultResultSettings()->customFaultResult())
+ if (this->faultResultSettings()->showCustomFaultResult())
{
faultResultSlot = this->faultResultSettings()->customFaultResult();
}
-
for (size_t i = 0; i < faultGeometriesToRecolor.size(); ++i)
{
- if (this->faultResultSettings()->visualizationMode() == RimFaultResultSlot::FAULT_COLOR)
- {
- m_reservoirGridPartManager->updateFaultColors(faultGeometriesToRecolor[i], m_currentTimeStep, faultResultSlot);
- }
- else if (this->animationMode() && this->cellEdgeResult()->hasResult())
+ if (this->animationMode() && this->cellEdgeResult()->hasResult())
{
m_reservoirGridPartManager->updateFaultCellEdgeResultColor(faultGeometriesToRecolor[i], m_currentTimeStep, faultResultSlot, this->cellEdgeResult());
}
@@ -2039,7 +2031,7 @@ bool RimReservoirView::isTimeStepDependentDataVisible() const
if (this->cellResult()->isTernarySaturationSelected()) return true;
- if (this->faultResultSettings->customFaultResult())
+ if (this->faultResultSettings->showCustomFaultResult())
{
if (this->faultResultSettings->customFaultResult()->hasDynamicResult()) return true;