Faults: Improved forced visibility control of faults. Renaming.

This commit is contained in:
Magne Sjaastad
2014-01-07 14:27:43 +01:00
parent 645f824ed0
commit 7276c2ad31
8 changed files with 125 additions and 90 deletions

View File

@@ -45,7 +45,7 @@ RivReservoirFaultsPartMgr::RivReservoirFaultsPartMgr(const RigMainGrid* grid, c
}
}
m_isFilterGenerated = false;
m_forceVisibility = false;
}
//--------------------------------------------------------------------------------------------------
@@ -101,9 +101,8 @@ void RivReservoirFaultsPartMgr::appendPartsToModel(cvf::ModelBasicList* model)
CVF_ASSERT(rivFaultPart.notNull());
// Parts that is overridden by the grid settings
bool forceDisplayOfFault = false;
if (isShowingGrid && m_isFilterGenerated)
bool forceDisplayOfFault = isShowingGrid;
if (m_forceVisibility)
{
forceDisplayOfFault = true;
}
@@ -160,7 +159,7 @@ void RivReservoirFaultsPartMgr::applySingleColorEffect()
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
void RivReservoirFaultsPartMgr::updateCellResultColor(size_t timeStepIndex, RimResultSlot* cellResultSlot)
void RivReservoirFaultsPartMgr::updateColors(size_t timeStepIndex, RimResultSlot* cellResultSlot)
{
if (m_faultCollection->showResultsOnFaults())
{
@@ -229,8 +228,8 @@ void RivReservoirFaultsPartMgr::appendLabelPartsToModel(cvf::ModelBasicList* mod
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
void RivReservoirFaultsPartMgr::setGeneratedByFilter(bool isFilterGenerated)
void RivReservoirFaultsPartMgr::setFaultForceVisibility(bool forceVisibility)
{
m_isFilterGenerated = isFilterGenerated;
m_forceVisibility = forceVisibility;
}

View File

@@ -44,10 +44,10 @@ public:
void setTransform(cvf::Transform* scaleTransform);
void setCellVisibility(cvf::UByteArray* cellVisibilities);
void setGeneratedByFilter(bool isFilterGenerated);
void setFaultForceVisibility(bool isFilterGenerated);
void applySingleColorEffect();
void updateCellResultColor(size_t timeStepIndex, RimResultSlot* cellResultSlot);
void updateColors(size_t timeStepIndex, RimResultSlot* cellResultSlot);
void updateCellEdgeResultColor(size_t timeStepIndex, RimResultSlot* cellResultSlot,
RimCellEdgeResultSlot* cellEdgeResultSlot);
@@ -60,5 +60,5 @@ private:
cvf::ref<cvf::Transform> m_scaleTransform;
const RimFaultCollection* m_faultCollection;
cvf::Collection<RivFaultPartMgr> m_faultParts;
bool m_isFilterGenerated; // This fault geometry is created based on either range filter or property filter
bool m_forceVisibility;
};

View File

@@ -152,11 +152,11 @@ void RivReservoirPartMgr::appendGridPartsToModel(cvf::ModelBasicList* model, con
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
void RivReservoirPartMgr::updateFaultCellResultColor(size_t timeStepIndex, RimResultSlot* cellResultSlot)
void RivReservoirPartMgr::updateFaultColors(size_t timeStepIndex, RimResultSlot* cellResultSlot)
{
if (m_faultsPartMgr.notNull())
{
m_faultsPartMgr->updateCellResultColor(timeStepIndex, cellResultSlot);
m_faultsPartMgr->updateColors(timeStepIndex, cellResultSlot);
}
}
@@ -185,11 +185,11 @@ void RivReservoirPartMgr::appendFaultLabelPartsToModel(cvf::ModelBasicList* mode
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
void RivReservoirPartMgr::setGeneratedByFilter(bool isGeneratedByFilter)
void RivReservoirPartMgr::setFaultForceVisibility(bool isGeneratedByFilter)
{
if (m_faultsPartMgr.notNull())
{
m_faultsPartMgr->setGeneratedByFilter(isGeneratedByFilter);
m_faultsPartMgr->setFaultForceVisibility(isGeneratedByFilter);
}
}

View File

@@ -48,7 +48,7 @@ public:
void clearAndSetReservoir(const RigCaseData* eclipseCase, const RimFaultCollection* faultCollection);
void setTransform(cvf::Transform* scaleTransform);
void setCellVisibility(size_t gridIndex, cvf::UByteArray* cellVisibilities );
void setGeneratedByFilter(bool isGeneratedByFilter);
void setFaultForceVisibility(bool isGeneratedByFilter);
//size_t gridCount() { return m_allGrids.size(); }
cvf::ref<cvf::UByteArray>
@@ -63,7 +63,7 @@ public:
void appendGridPartsToModel(cvf::ModelBasicList* model);
// Faults
void updateFaultCellResultColor(size_t timeStepIndex, RimResultSlot* cellResultSlot);
void updateFaultColors(size_t timeStepIndex, RimResultSlot* cellResultSlot);
void appendFaultPartsToModel(cvf::ModelBasicList* model);
void appendFaultLabelPartsToModel(cvf::ModelBasicList* model);
private:

View File

@@ -240,7 +240,6 @@ void RivReservoirViewPartMgr::createGeometry(ReservoirGeometryCacheType geometry
RigCaseData* res = m_reservoirView->eclipseCase()->reservoirData();
m_geometries[geometryType].clearAndSetReservoir(res, m_reservoirView->faultCollection());
m_geometries[geometryType].setTransform(m_scaleTransform.p());
setGeneratedByFilterFromGeometryType(&m_geometries[geometryType], geometryType);
std::vector<RigGridBase*> grids;
res->allGrids(&grids);
@@ -397,7 +396,6 @@ void RivReservoirViewPartMgr::createPropertyFilteredNoneWellCellGeometry(size_t
m_propFilteredGeometryFrames[frameIndex]->clearAndSetReservoir(res, m_reservoirView->faultCollection());
m_propFilteredGeometryFrames[frameIndex]->setTransform(m_scaleTransform.p());
setGeneratedByFilterFromGeometryType(m_propFilteredGeometryFrames[frameIndex].p(), PROPERTY_FILTERED);
std::vector<RigGridBase*> grids;
res->allGrids(&grids);
@@ -475,7 +473,6 @@ void RivReservoirViewPartMgr::createPropertyFilteredWellGeometry(size_t frameInd
m_propFilteredWellGeometryFrames[frameIndex]->clearAndSetReservoir(res, m_reservoirView->faultCollection());
m_propFilteredWellGeometryFrames[frameIndex]->setTransform(m_scaleTransform.p());
setGeneratedByFilterFromGeometryType(m_propFilteredWellGeometryFrames[frameIndex].p(), PROPERTY_FILTERED_WELL_CELLS);
std::vector<RigGridBase*> grids;
res->allGrids(&grids);
@@ -826,10 +823,10 @@ RivReservoirPartMgr * RivReservoirViewPartMgr::reservoirPartManager(ReservoirGeo
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
void RivReservoirViewPartMgr::updateFaultsCellResultColor(ReservoirGeometryCacheType geometryType, size_t timeStepIndex, RimResultSlot* cellResultSlot)
void RivReservoirViewPartMgr::updateFaultColors(ReservoirGeometryCacheType geometryType, size_t timeStepIndex, RimResultSlot* cellResultSlot)
{
RivReservoirPartMgr* pmgr = reservoirPartManager(geometryType, timeStepIndex);
pmgr->updateFaultCellResultColor(timeStepIndex, cellResultSlot);
pmgr->updateFaultColors(timeStepIndex, cellResultSlot);
}
//--------------------------------------------------------------------------------------------------
@@ -907,22 +904,6 @@ void RivReservoirViewPartMgr::appendFaultLabelsDynamicGeometryPartsToModel(cvf::
m_propFilteredGeometryFrames[frameIndex]->appendFaultLabelPartsToModel(model);
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
void RivReservoirViewPartMgr::setGeneratedByFilterFromGeometryType(RivReservoirPartMgr* reservoirPartManager, ReservoirGeometryCacheType cacheType)
{
CVF_ASSERT(reservoirPartManager);
if (cacheType == RANGE_FILTERED ||
cacheType == RANGE_FILTERED_INACTIVE ||
cacheType == RANGE_FILTERED_WELL_CELLS ||
cacheType == PROPERTY_FILTERED ||
cacheType == PROPERTY_FILTERED_WELL_CELLS)
{
reservoirPartManager->setGeneratedByFilter(true);
}
}
//--------------------------------------------------------------------------------------------------
///
@@ -942,3 +923,11 @@ std::vector<RivReservoirViewPartMgr::ReservoirGeometryCacheType> RivReservoirVie
return types;
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
void RivReservoirViewPartMgr::setFaultForceVisibilityForGeometryType(ReservoirGeometryCacheType geometryType, bool forceVisibility)
{
m_geometries[geometryType].setFaultForceVisibility(forceVisibility);
}

View File

@@ -71,7 +71,7 @@ public:
// Faults
void appendFaultsStaticGeometryPartsToModel(cvf::ModelBasicList* model, ReservoirGeometryCacheType geometryType);
void appendFaultsDynamicGeometryPartsToModel(cvf::ModelBasicList* model, ReservoirGeometryCacheType geometryType, size_t frameIndex);
void updateFaultsCellResultColor(ReservoirGeometryCacheType geometryType, size_t timeStepIndex, RimResultSlot* cellResultSlot);
void updateFaultColors(ReservoirGeometryCacheType geometryType, size_t timeStepIndex, RimResultSlot* cellResultSlot);
// Fault labels
ReservoirGeometryCacheType geometryTypeForFaultLabels(const std::vector<ReservoirGeometryCacheType>& geometryTypes) const;
@@ -80,6 +80,8 @@ public:
static std::vector<ReservoirGeometryCacheType> defaultVisibleFaultTypes();
void setFaultForceVisibilityForGeometryType(ReservoirGeometryCacheType geometryType, bool forceVisibility);
private:
void createGeometry(ReservoirGeometryCacheType geometryType);
void computeVisibility(cvf::UByteArray* cellVisibility, ReservoirGeometryCacheType geometryType, RigGridBase* grid, size_t gridIdx);
@@ -97,8 +99,6 @@ private:
RivReservoirPartMgr * reservoirPartManager(ReservoirGeometryCacheType geometryType, size_t timeStepIndex );
void setGeneratedByFilterFromGeometryType(RivReservoirPartMgr* reservoirPartManager, ReservoirGeometryCacheType cacheType);
private:
caf::FixedArray<RivReservoirPartMgr, PROPERTY_FILTERED> m_geometries;