diff --git a/ApplicationLibCode/ProjectDataModel/RimEclipseContourMapView.cpp b/ApplicationLibCode/ProjectDataModel/RimEclipseContourMapView.cpp index 6f28d821a2..6078b25b71 100644 --- a/ApplicationLibCode/ProjectDataModel/RimEclipseContourMapView.cpp +++ b/ApplicationLibCode/ProjectDataModel/RimEclipseContourMapView.cpp @@ -241,7 +241,8 @@ void RimEclipseContourMapView::updateGeometry() { caf::ProgressInfo progress( 100, "Generate Contour Map", true ); - this->updateVisibleGeometriesAndCellColors(); + updateVisibleGeometries(); + updateVisibleCellColors(); { // Step 1: generate results and some minor updates. About 30% of the time. if ( m_contourMapProjection->isChecked() ) diff --git a/ApplicationLibCode/ProjectDataModel/RimEclipseView.cpp b/ApplicationLibCode/ProjectDataModel/RimEclipseView.cpp index d904606b4a..9dda840198 100644 --- a/ApplicationLibCode/ProjectDataModel/RimEclipseView.cpp +++ b/ApplicationLibCode/ProjectDataModel/RimEclipseView.cpp @@ -691,9 +691,11 @@ void RimEclipseView::onUpdateDisplayModelForCurrentTimeStep() m_propertyFilterCollection()->updateFromCurrentTimeStep(); + updateVisibleGeometries(); + onUpdateLegends(); // To make sure the scalar mappers are set up correctly - updateVisibleGeometriesAndCellColors(); + updateVisibleCellColors(); wellCollection()->scaleWellDisks(); @@ -713,24 +715,17 @@ void RimEclipseView::onUpdateDisplayModelForCurrentTimeStep() //-------------------------------------------------------------------------------------------------- /// //-------------------------------------------------------------------------------------------------- -void RimEclipseView::updateVisibleGeometriesAndCellColors() +void RimEclipseView::updateVisibleGeometries() { - std::vector geometriesToRecolor; + if ( this->viewController() && this->viewController()->isVisibleCellsOveridden() ) return; - if ( this->viewController() && this->viewController()->isVisibleCellsOveridden() ) - { - geometriesToRecolor.push_back( OVERRIDDEN_CELL_VISIBILITY ); - } - else if ( this->eclipsePropertyFilterCollection()->hasActiveFilters() ) + if ( this->eclipsePropertyFilterCollection()->hasActiveFilters() ) { cvf::ref frameParts = new cvf::ModelBasicList; frameParts->setName( "GridModel" ); std::vector gridIndices = this->indicesToVisibleGrids(); - geometriesToRecolor.push_back( PROPERTY_FILTERED ); - geometriesToRecolor.push_back( PROPERTY_FILTERED_WELL_CELLS ); - if ( isGridVisualizationMode() ) { m_reservoirGridPartManager->appendDynamicGeometryPartsToModel( frameParts.p(), @@ -748,7 +743,11 @@ void RimEclipseView::updateVisibleGeometriesAndCellColors() m_reservoirGridPartManager->ensureDynamicGeometryPartsCreated( PROPERTY_FILTERED_WELL_CELLS, m_currentTimeStep ); } - setVisibleGridParts( geometriesToRecolor ); + std::vector visibleGridParts; + visibleGridParts.push_back( PROPERTY_FILTERED ); + visibleGridParts.push_back( PROPERTY_FILTERED_WELL_CELLS ); + + setVisibleGridParts( visibleGridParts ); setVisibleGridPartsWatertight(); std::set faultGeometryTypesToAppend = allVisibleFaultGeometryTypes(); @@ -824,6 +823,24 @@ void RimEclipseView::updateVisibleGeometriesAndCellColors() } } } +} + +//-------------------------------------------------------------------------------------------------- +/// +//-------------------------------------------------------------------------------------------------- +void RimEclipseView::updateVisibleCellColors() +{ + std::vector geometriesToRecolor; + + if ( this->viewController() && this->viewController()->isVisibleCellsOveridden() ) + { + geometriesToRecolor.push_back( OVERRIDDEN_CELL_VISIBILITY ); + } + else if ( this->eclipsePropertyFilterCollection()->hasActiveFilters() ) + { + geometriesToRecolor.push_back( PROPERTY_FILTERED ); + geometriesToRecolor.push_back( PROPERTY_FILTERED_WELL_CELLS ); + } else if ( this->cellFilterCollection()->hasActiveFilters() && this->wellCollection()->hasVisibleWellCells() ) { geometriesToRecolor.push_back( RANGE_FILTERED ); diff --git a/ApplicationLibCode/ProjectDataModel/RimEclipseView.h b/ApplicationLibCode/ProjectDataModel/RimEclipseView.h index 2f1993374a..bea112197c 100644 --- a/ApplicationLibCode/ProjectDataModel/RimEclipseView.h +++ b/ApplicationLibCode/ProjectDataModel/RimEclipseView.h @@ -162,7 +162,9 @@ protected: bool isShowingActiveCellsOnly() override; void onUpdateDisplayModelForCurrentTimeStep() override; - void updateVisibleGeometriesAndCellColors(); + void updateVisibleCellColors(); + void updateVisibleGeometries(); + void appendWellsAndFracturesToModel(); void appendElementVectorResultToModel();