mirror of
https://github.com/OPM/ResInsight.git
synced 2025-02-25 18:55:39 -06:00
Refactoring more general stuff into RimView
updateViewerWidget scheduleUpdateDisplayModelAndRedraw
This commit is contained in:
parent
4b7d593b3c
commit
3dac8807c7
@ -1969,7 +1969,7 @@ QString RiaApplication::commandLineParameterHelp() const
|
||||
/// Schedule a creation of the Display model and redraw of the reservoir view
|
||||
/// The redraw will happen as soon as the event loop is entered
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
void RiaApplication::scheduleDisplayModelUpdateAndRedraw(RimReservoirView* resViewToUpdate)
|
||||
void RiaApplication::scheduleDisplayModelUpdateAndRedraw(RimView* resViewToUpdate)
|
||||
{
|
||||
m_resViewsToUpdate.push_back(resViewToUpdate);
|
||||
|
||||
@ -1992,13 +1992,13 @@ void RiaApplication::scheduleDisplayModelUpdateAndRedraw(RimReservoirView* resVi
|
||||
void RiaApplication::slotUpdateScheduledDisplayModels()
|
||||
{
|
||||
// Compress to remove duplicates
|
||||
std::set<RimReservoirView*> resViewsToUpdate;
|
||||
std::set<RimView*> resViewsToUpdate;
|
||||
for (size_t i = 0; i < m_resViewsToUpdate.size(); ++i)
|
||||
{
|
||||
resViewsToUpdate.insert(m_resViewsToUpdate[i]);
|
||||
}
|
||||
|
||||
for (std::set<RimReservoirView*>::iterator it = resViewsToUpdate.begin(); it != resViewsToUpdate.end(); ++it )
|
||||
for (std::set<RimView*>::iterator it = resViewsToUpdate.begin(); it != resViewsToUpdate.end(); ++it )
|
||||
{
|
||||
if (*it)
|
||||
{
|
||||
|
@ -38,6 +38,7 @@ class Drawable;
|
||||
class RiaSocketServer;
|
||||
class RiaPreferences;
|
||||
class RimReservoirView;
|
||||
class RimView;
|
||||
class RimProject;
|
||||
class RimCommandObject;
|
||||
class RiaProjectModifier;
|
||||
@ -76,7 +77,7 @@ public:
|
||||
RimReservoirView* activeReservoirView();
|
||||
const RimReservoirView* activeReservoirView() const;
|
||||
|
||||
void scheduleDisplayModelUpdateAndRedraw(RimReservoirView* resViewToUpdate);
|
||||
void scheduleDisplayModelUpdateAndRedraw(RimView* resViewToUpdate);
|
||||
|
||||
RimProject* project();
|
||||
|
||||
@ -174,7 +175,7 @@ private:
|
||||
caf::PdmPointer<RimReservoirView> m_activeReservoirView;
|
||||
caf::PdmPointer<RimProject> m_project;
|
||||
|
||||
std::vector<caf::PdmPointer<RimReservoirView> > m_resViewsToUpdate;
|
||||
std::vector<caf::PdmPointer<RimView> > m_resViewsToUpdate;
|
||||
QTimer* m_resViewUpdateTimer;
|
||||
|
||||
RiaSocketServer* m_socketServer;
|
||||
|
@ -87,6 +87,9 @@ RimGeoMechView::RimGeoMechView(void)
|
||||
CAF_PDM_InitField(&meshMode, "MeshMode", defaultMeshType, "Grid lines", "", "", "");
|
||||
CAF_PDM_InitFieldNoDefault(&surfaceMode, "SurfaceMode", "Grid surface", "", "", "");
|
||||
|
||||
//this->cellResult()->setReservoirView(this);
|
||||
this->cellResult()->legendConfig()->setPosition(cvf::Vec2ui(10, 120));
|
||||
this->cellResult()->legendConfig()->setReservoirView(this);
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
@ -94,71 +97,9 @@ RimGeoMechView::RimGeoMechView(void)
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
RimGeoMechView::~RimGeoMechView(void)
|
||||
{
|
||||
m_geomechCase = NULL;
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
///
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
void RimGeoMechView::updateViewerWidget()
|
||||
{
|
||||
if (showWindow())
|
||||
{
|
||||
bool isViewerCreated = false;
|
||||
if (!m_viewer)
|
||||
{
|
||||
QGLFormat glFormat;
|
||||
glFormat.setDirectRendering(RiaApplication::instance()->useShaders());
|
||||
|
||||
m_viewer = new RiuViewer(glFormat, NULL);
|
||||
//m_viewer->setOwnerReservoirView(this);
|
||||
|
||||
RiuMainWindow::instance()->addViewer(m_viewer);
|
||||
m_viewer->setMinNearPlaneDistance(10);
|
||||
|
||||
|
||||
m_viewer->removeAllColorLegends();
|
||||
m_viewer->addColorLegendToBottomLeftCorner(this->cellResult()->legendConfig->legend());
|
||||
|
||||
if (RiaApplication::instance()->navigationPolicy() == RiaApplication::NAVIGATION_POLICY_CEETRON)
|
||||
{
|
||||
m_viewer->setNavigationPolicy(new caf::CeetronPlusNavigation);
|
||||
}
|
||||
else
|
||||
{
|
||||
m_viewer->setNavigationPolicy(new caf::CadNavigation);
|
||||
}
|
||||
|
||||
m_viewer->enablePerfInfoHud(RiaApplication::instance()->showPerformanceInfo());
|
||||
|
||||
//m_viewer->layoutWidget()->showMaximized();
|
||||
|
||||
isViewerCreated = true;
|
||||
}
|
||||
|
||||
RiuMainWindow::instance()->setActiveViewer(m_viewer);
|
||||
|
||||
if (isViewerCreated) m_viewer->mainCamera()->setViewMatrix(cameraPosition);
|
||||
m_viewer->mainCamera()->viewport()->setClearColor(cvf::Color4f(backgroundColor()));
|
||||
|
||||
m_viewer->update();
|
||||
}
|
||||
else
|
||||
{
|
||||
if (m_viewer)
|
||||
{
|
||||
if (m_viewer->layoutWidget()->parentWidget())
|
||||
{
|
||||
m_viewer->layoutWidget()->parentWidget()->hide();
|
||||
}
|
||||
else
|
||||
{
|
||||
m_viewer->layoutWidget()->hide();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
updateViewerWidgetWindowTitle();
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
///
|
||||
@ -168,9 +109,9 @@ void RimGeoMechView::updateViewerWidgetWindowTitle()
|
||||
if (m_viewer)
|
||||
{
|
||||
QString windowTitle;
|
||||
if (false)//m_reservoir.notNull())
|
||||
if (m_geomechCase.notNull())
|
||||
{
|
||||
// windowTitle = QString("%1 - %2").arg(m_reservoir->caseUserDescription()).arg(name);
|
||||
windowTitle = QString("%1 - %2").arg(m_geomechCase->caseUserDescription()).arg(name);
|
||||
}
|
||||
else
|
||||
{
|
||||
@ -253,6 +194,17 @@ void RimGeoMechView::setGeoMechCase(RimGeoMechCase* gmCase)
|
||||
m_geomechCase = gmCase;
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
///
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
void RimGeoMechView::resetLegendsInViewer()
|
||||
{
|
||||
this->cellResult()->legendConfig->recreateLegend();
|
||||
|
||||
m_viewer->removeAllColorLegends();
|
||||
m_viewer->addColorLegendToBottomLeftCorner(this->cellResult()->legendConfig->legend());
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
///
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
|
@ -76,9 +76,10 @@ public:
|
||||
caf::PdmField< caf::AppEnum< SurfaceModeType > > surfaceMode;
|
||||
|
||||
private:
|
||||
void updateViewerWidget();
|
||||
void updateViewerWidgetWindowTitle();
|
||||
void createDisplayModelAndRedraw();
|
||||
|
||||
virtual void updateViewerWidgetWindowTitle();
|
||||
virtual void createDisplayModelAndRedraw();
|
||||
virtual void resetLegendsInViewer();
|
||||
|
||||
caf::PdmPointer<RimGeoMechCase> m_geomechCase;
|
||||
cvf::ref<RivGeoMechPartMgr> m_geoMechVizModel;
|
||||
|
@ -160,85 +160,17 @@ RimReservoirView::~RimReservoirView()
|
||||
delete this->faultResultSettings();
|
||||
delete this->cellResult();
|
||||
delete this->cellEdgeResult();
|
||||
delete this->overlayInfoConfig();
|
||||
|
||||
delete rangeFilterCollection();
|
||||
delete propertyFilterCollection();
|
||||
delete wellCollection();
|
||||
delete faultCollection();
|
||||
|
||||
if (m_viewer)
|
||||
{
|
||||
RiuMainWindow::instance()->removeViewer(m_viewer);
|
||||
}
|
||||
|
||||
m_reservoirGridPartManager->clearGeometryCache();
|
||||
delete m_viewer;
|
||||
|
||||
|
||||
m_reservoir = NULL;
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
///
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
void RimReservoirView::updateViewerWidget()
|
||||
{
|
||||
if (showWindow())
|
||||
{
|
||||
bool isViewerCreated = false;
|
||||
if (!m_viewer)
|
||||
{
|
||||
QGLFormat glFormat;
|
||||
glFormat.setDirectRendering(RiaApplication::instance()->useShaders());
|
||||
|
||||
m_viewer = new RiuViewer(glFormat, NULL);
|
||||
m_viewer->setOwnerReservoirView(this);
|
||||
|
||||
RiuMainWindow::instance()->addViewer(m_viewer);
|
||||
m_viewer->setMinNearPlaneDistance(10);
|
||||
|
||||
this->resetLegendsInViewer();
|
||||
|
||||
if (RiaApplication::instance()->navigationPolicy() == RiaApplication::NAVIGATION_POLICY_CEETRON)
|
||||
{
|
||||
m_viewer->setNavigationPolicy(new caf::CeetronPlusNavigation);
|
||||
}
|
||||
else
|
||||
{
|
||||
m_viewer->setNavigationPolicy(new caf::CadNavigation);
|
||||
}
|
||||
|
||||
m_viewer->enablePerfInfoHud(RiaApplication::instance()->showPerformanceInfo());
|
||||
|
||||
//m_viewer->layoutWidget()->showMaximized();
|
||||
|
||||
isViewerCreated = true;
|
||||
}
|
||||
|
||||
RiuMainWindow::instance()->setActiveViewer(m_viewer);
|
||||
|
||||
if (isViewerCreated) m_viewer->mainCamera()->setViewMatrix(cameraPosition);
|
||||
m_viewer->mainCamera()->viewport()->setClearColor(cvf::Color4f(backgroundColor()));
|
||||
|
||||
m_viewer->update();
|
||||
}
|
||||
else
|
||||
{
|
||||
if (m_viewer)
|
||||
{
|
||||
if (m_viewer->layoutWidget()->parentWidget())
|
||||
{
|
||||
m_viewer->layoutWidget()->parentWidget()->hide();
|
||||
}
|
||||
else
|
||||
{
|
||||
m_viewer->layoutWidget()->hide();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
updateViewerWidgetWindowTitle();
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
///
|
||||
@ -278,14 +210,6 @@ void RimReservoirView::clampCurrentTimestep()
|
||||
if (m_currentTimeStep < 0 ) m_currentTimeStep = 0;
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
///
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
void RimReservoirView::scheduleCreateDisplayModelAndRedraw()
|
||||
{
|
||||
RiaApplication::instance()->scheduleDisplayModelUpdateAndRedraw(this);
|
||||
}
|
||||
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
///
|
||||
|
@ -133,11 +133,11 @@ public:
|
||||
|
||||
|
||||
private:
|
||||
void updateViewerWidget();
|
||||
void resetLegendsInViewer();
|
||||
|
||||
virtual void resetLegendsInViewer();
|
||||
|
||||
|
||||
void updateViewerWidgetWindowTitle();
|
||||
virtual void updateViewerWidgetWindowTitle();
|
||||
void setDefaultView();
|
||||
|
||||
public:
|
||||
@ -155,9 +155,8 @@ public:
|
||||
|
||||
// Display model generation
|
||||
public:
|
||||
virtual void createDisplayModelAndRedraw();
|
||||
void loadDataAndUpdate();
|
||||
void createDisplayModelAndRedraw();
|
||||
void scheduleCreateDisplayModelAndRedraw();
|
||||
bool isTimeStepDependentDataVisible() const;
|
||||
|
||||
void scheduleGeometryRegen(unsigned short geometryType);
|
||||
@ -171,6 +170,7 @@ public:
|
||||
|
||||
// Display model generation
|
||||
private:
|
||||
|
||||
void createDisplayModel();
|
||||
void updateDisplayModelVisibility();
|
||||
void updateCurrentTimeStep();
|
||||
|
@ -5,6 +5,11 @@
|
||||
#include "RiaPreferences.h"
|
||||
#include "Rim3dOverlayInfoConfig.h"
|
||||
#include "RiuViewer.h"
|
||||
#include "RiuMainWindow.h"
|
||||
#include "cafCeetronPlusNavigation.h"
|
||||
#include "cafCadNavigation.h"
|
||||
#include "cvfCamera.h"
|
||||
#include "cvfViewport.h"
|
||||
|
||||
CAF_PDM_ABSTRACT_SOURCE_INIT(RimView, "GenericView"); // Do not use. Abstract class
|
||||
|
||||
@ -51,7 +56,14 @@ RimView::RimView(void)
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
RimView::~RimView(void)
|
||||
{
|
||||
|
||||
delete this->overlayInfoConfig();
|
||||
|
||||
if (m_viewer)
|
||||
{
|
||||
RiuMainWindow::instance()->removeViewer(m_viewer);
|
||||
}
|
||||
|
||||
delete m_viewer;
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
@ -62,5 +74,75 @@ RiuViewer* RimView::viewer()
|
||||
return m_viewer;
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
///
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
void RimView::updateViewerWidget()
|
||||
{
|
||||
if (showWindow())
|
||||
{
|
||||
bool isViewerCreated = false;
|
||||
if (!m_viewer)
|
||||
{
|
||||
QGLFormat glFormat;
|
||||
glFormat.setDirectRendering(RiaApplication::instance()->useShaders());
|
||||
|
||||
m_viewer = new RiuViewer(glFormat, NULL);
|
||||
m_viewer->setOwnerReservoirView(this);
|
||||
|
||||
RiuMainWindow::instance()->addViewer(m_viewer);
|
||||
m_viewer->setMinNearPlaneDistance(10);
|
||||
|
||||
this->resetLegendsInViewer();
|
||||
|
||||
if (RiaApplication::instance()->navigationPolicy() == RiaApplication::NAVIGATION_POLICY_CEETRON)
|
||||
{
|
||||
m_viewer->setNavigationPolicy(new caf::CeetronPlusNavigation);
|
||||
}
|
||||
else
|
||||
{
|
||||
m_viewer->setNavigationPolicy(new caf::CadNavigation);
|
||||
}
|
||||
|
||||
m_viewer->enablePerfInfoHud(RiaApplication::instance()->showPerformanceInfo());
|
||||
|
||||
isViewerCreated = true;
|
||||
}
|
||||
|
||||
RiuMainWindow::instance()->setActiveViewer(m_viewer);
|
||||
|
||||
if (isViewerCreated) m_viewer->mainCamera()->setViewMatrix(cameraPosition);
|
||||
m_viewer->mainCamera()->viewport()->setClearColor(cvf::Color4f(backgroundColor()));
|
||||
|
||||
m_viewer->update();
|
||||
}
|
||||
else
|
||||
{
|
||||
if (m_viewer)
|
||||
{
|
||||
if (m_viewer->layoutWidget()->parentWidget())
|
||||
{
|
||||
m_viewer->layoutWidget()->parentWidget()->hide();
|
||||
}
|
||||
else
|
||||
{
|
||||
m_viewer->layoutWidget()->hide();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
updateViewerWidgetWindowTitle();
|
||||
}
|
||||
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
///
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
void RimView::scheduleCreateDisplayModelAndRedraw()
|
||||
{
|
||||
RiaApplication::instance()->scheduleDisplayModelUpdateAndRedraw(this);
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
@ -62,14 +62,17 @@ public:
|
||||
virtual void updateCurrentTimeStepAndRedraw() = 0;
|
||||
virtual void endAnimation() = 0;
|
||||
|
||||
void scheduleCreateDisplayModelAndRedraw();
|
||||
virtual void createDisplayModelAndRedraw() = 0;
|
||||
|
||||
public:
|
||||
virtual caf::PdmFieldHandle* objectToggleField() { return &showWindow; }
|
||||
virtual caf::PdmFieldHandle* userDescriptionField() { return &name; }
|
||||
protected:
|
||||
//void updateViewerWidget();
|
||||
//virtual void resetLegendsInViewer() = 0;
|
||||
|
||||
virtual void resetLegendsInViewer() = 0;
|
||||
void updateViewerWidget();
|
||||
virtual void updateViewerWidgetWindowTitle() = 0;
|
||||
QPointer<RiuViewer> m_viewer;
|
||||
caf::PdmField<int> m_currentTimeStep;
|
||||
};
|
||||
|
@ -204,6 +204,9 @@ void RiuViewer::mouseReleaseEvent(QMouseEvent* event)
|
||||
}
|
||||
else if (event->button() == Qt::RightButton)
|
||||
{
|
||||
RimReservoirView* eclipseView = dynamic_cast<RimReservoirView*>(m_reservoirView.p());
|
||||
if (!eclipseView) return;
|
||||
|
||||
m_currentGridIdx = cvf::UNDEFINED_SIZE_T;
|
||||
m_currentCellIndex = cvf::UNDEFINED_SIZE_T;
|
||||
|
||||
@ -244,7 +247,7 @@ void RiuViewer::mouseReleaseEvent(QMouseEvent* event)
|
||||
menu.addAction(QString("J-slice range filter"), this, SLOT(slotRangeFilterJ()));
|
||||
menu.addAction(QString("K-slice range filter"), this, SLOT(slotRangeFilterK()));
|
||||
|
||||
const RigCaseData* reservoir = m_reservoirView->eclipseCase()->reservoirData();
|
||||
const RigCaseData* reservoir = eclipseView->eclipseCase()->reservoirData();
|
||||
const RigFault* fault = reservoir->mainGrid()->findFaultFromCellIndexAndCellFace(m_currentCellIndex, m_currentFaceIndex);
|
||||
if (fault)
|
||||
{
|
||||
@ -265,10 +268,13 @@ void RiuViewer::mouseReleaseEvent(QMouseEvent* event)
|
||||
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
///
|
||||
/// Todo: Move this to a command instead
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
void RiuViewer::slotRangeFilterI()
|
||||
{
|
||||
RimReservoirView* eclipseView = dynamic_cast<RimReservoirView*>(m_reservoirView.p());
|
||||
if (!eclipseView) return;
|
||||
|
||||
size_t i, j, k;
|
||||
ijkFromCellIndex(m_currentGridIdx, m_currentCellIndex, &i, &j, &k);
|
||||
|
||||
@ -276,7 +282,7 @@ void RiuViewer::slotRangeFilterI()
|
||||
RimUiTreeModelPdm* myModel = mainWindow->uiPdmModel();
|
||||
if (myModel)
|
||||
{
|
||||
RimCellRangeFilterCollection* rangeFilterCollection = m_reservoirView->rangeFilterCollection();
|
||||
RimCellRangeFilterCollection* rangeFilterCollection = eclipseView->rangeFilterCollection();
|
||||
|
||||
QModelIndex collectionModelIndex = myModel->getModelIndexFromPdmObject(rangeFilterCollection);
|
||||
|
||||
@ -296,7 +302,7 @@ void RiuViewer::slotRangeFilterI()
|
||||
mainWindow->setCurrentObjectInTreeView(rangeFilter);
|
||||
}
|
||||
|
||||
m_reservoirView->setSurfaceDrawstyle();
|
||||
eclipseView->setSurfaceDrawstyle();
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
@ -304,6 +310,9 @@ void RiuViewer::slotRangeFilterI()
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
void RiuViewer::slotRangeFilterJ()
|
||||
{
|
||||
RimReservoirView* eclipseView = dynamic_cast<RimReservoirView*>(m_reservoirView.p());
|
||||
if (!eclipseView) return;
|
||||
|
||||
size_t i, j, k;
|
||||
ijkFromCellIndex(m_currentGridIdx, m_currentCellIndex, &i, &j, &k);
|
||||
|
||||
@ -311,7 +320,7 @@ void RiuViewer::slotRangeFilterJ()
|
||||
RimUiTreeModelPdm* myModel = mainWindow->uiPdmModel();
|
||||
if (myModel)
|
||||
{
|
||||
RimCellRangeFilterCollection* rangeFilterCollection = m_reservoirView->rangeFilterCollection();
|
||||
RimCellRangeFilterCollection* rangeFilterCollection = eclipseView->rangeFilterCollection();
|
||||
|
||||
QModelIndex collectionModelIndex = myModel->getModelIndexFromPdmObject(rangeFilterCollection);
|
||||
|
||||
@ -331,7 +340,7 @@ void RiuViewer::slotRangeFilterJ()
|
||||
mainWindow->setCurrentObjectInTreeView(rangeFilter);
|
||||
}
|
||||
|
||||
m_reservoirView->setSurfaceDrawstyle();
|
||||
eclipseView->setSurfaceDrawstyle();
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
@ -339,6 +348,9 @@ void RiuViewer::slotRangeFilterJ()
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
void RiuViewer::slotRangeFilterK()
|
||||
{
|
||||
RimReservoirView* eclipseView = dynamic_cast<RimReservoirView*>(m_reservoirView.p());
|
||||
if (!eclipseView) return;
|
||||
|
||||
size_t i, j, k;
|
||||
ijkFromCellIndex(m_currentGridIdx, m_currentCellIndex, &i, &j, &k);
|
||||
|
||||
@ -346,7 +358,7 @@ void RiuViewer::slotRangeFilterK()
|
||||
RimUiTreeModelPdm* myModel = mainWindow->uiPdmModel();
|
||||
if (myModel)
|
||||
{
|
||||
RimCellRangeFilterCollection* rangeFilterCollection = m_reservoirView->rangeFilterCollection();
|
||||
RimCellRangeFilterCollection* rangeFilterCollection = eclipseView->rangeFilterCollection();
|
||||
|
||||
QModelIndex collectionModelIndex = myModel->getModelIndexFromPdmObject(rangeFilterCollection);
|
||||
|
||||
@ -366,7 +378,7 @@ void RiuViewer::slotRangeFilterK()
|
||||
mainWindow->setCurrentObjectInTreeView(rangeFilter);
|
||||
}
|
||||
|
||||
m_reservoirView->setSurfaceDrawstyle();
|
||||
eclipseView->setSurfaceDrawstyle();
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
@ -386,6 +398,8 @@ void RiuViewer::keyPressEvent(QKeyEvent* event)
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
void RiuViewer::handlePickAction(int winPosX, int winPosY)
|
||||
{
|
||||
RimReservoirView* eclipseView = dynamic_cast<RimReservoirView*>(m_reservoirView.p());
|
||||
|
||||
RiaApplication* app = RiaApplication::instance();
|
||||
|
||||
RiuMainWindow* mainWnd = RiuMainWindow::instance();
|
||||
@ -444,7 +458,7 @@ void RiuViewer::handlePickAction(int winPosX, int winPosY)
|
||||
|
||||
if (cellIndex != cvf::UNDEFINED_SIZE_T)
|
||||
{
|
||||
RiuResultTextBuilder textBuilder(m_reservoirView, gridIndex, cellIndex, m_reservoirView->currentTimeStep());
|
||||
RiuResultTextBuilder textBuilder(eclipseView, gridIndex, cellIndex, eclipseView->currentTimeStep());
|
||||
textBuilder.setFace(face);
|
||||
textBuilder.setNncIndex(nncIndex);
|
||||
textBuilder.setIntersectionPoint(localIntersectionPoint);
|
||||
@ -506,7 +520,7 @@ void RiuViewer::setPointOfInterest(cvf::Vec3d poi)
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
///
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
void RiuViewer::setOwnerReservoirView(RimReservoirView * owner)
|
||||
void RiuViewer::setOwnerReservoirView(RimView * owner)
|
||||
{
|
||||
m_reservoirView = owner;
|
||||
}
|
||||
@ -524,6 +538,9 @@ void RiuViewer::setEnableMask(unsigned int mask)
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
void RiuViewer::pickPointAndFace(int winPosX, int winPosY, cvf::Vec3d* localIntersectionPoint, cvf::Part** firstPart, uint* firstPartFaceHit, cvf::Part** nncPart, uint* nncPartFaceHit)
|
||||
{
|
||||
RimReservoirView* eclipseView = dynamic_cast<RimReservoirView*>(m_reservoirView.p());
|
||||
if(!eclipseView) return;
|
||||
|
||||
cvf::HitItemCollection hitItems;
|
||||
bool isSomethingHit = rayPick(winPosX, winPosY, &hitItems);
|
||||
|
||||
@ -532,9 +549,9 @@ void RiuViewer::pickPointAndFace(int winPosX, int winPosY, cvf::Vec3d* localInte
|
||||
CVF_ASSERT(hitItems.count() > 0);
|
||||
|
||||
double characteristicCellSize = 5.0;
|
||||
if (m_reservoirView && m_reservoirView->eclipseCase())
|
||||
if (eclipseView && eclipseView->eclipseCase())
|
||||
{
|
||||
characteristicCellSize = m_reservoirView->eclipseCase()->reservoirData()->mainGrid()->characteristicIJCellSize();
|
||||
characteristicCellSize = eclipseView->eclipseCase()->reservoirData()->mainGrid()->characteristicIJCellSize();
|
||||
}
|
||||
|
||||
double pickDepthThresholdSquared = characteristicCellSize / 100.0;
|
||||
@ -718,9 +735,13 @@ void RiuViewer::showHistogram(bool enable)
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
void RiuViewer::ijkFromCellIndex(size_t gridIdx, size_t cellIndex, size_t* i, size_t* j, size_t* k)
|
||||
{
|
||||
if (m_reservoirView->eclipseCase())
|
||||
RimReservoirView* eclipseView = dynamic_cast<RimReservoirView*>(m_reservoirView.p());
|
||||
if(!eclipseView) return;
|
||||
|
||||
|
||||
if (eclipseView->eclipseCase())
|
||||
{
|
||||
m_reservoirView->eclipseCase()->reservoirData()->grid(gridIdx)->ijkFromCellIndex(cellIndex, i, j, k);
|
||||
eclipseView->eclipseCase()->reservoirData()->grid(gridIdx)->ijkFromCellIndex(cellIndex, i, j, k);
|
||||
}
|
||||
}
|
||||
|
||||
@ -738,13 +759,17 @@ void RiuViewer::mousePressEvent(QMouseEvent* event)
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
void RiuViewer::slotHideFault()
|
||||
{
|
||||
const RigCaseData* reservoir = m_reservoirView->eclipseCase()->reservoirData();
|
||||
RimReservoirView* eclipseView = dynamic_cast<RimReservoirView*>(m_reservoirView.p());
|
||||
if(!eclipseView) return;
|
||||
|
||||
|
||||
const RigCaseData* reservoir = eclipseView->eclipseCase()->reservoirData();
|
||||
const RigFault* fault = reservoir->mainGrid()->findFaultFromCellIndexAndCellFace(m_currentCellIndex, m_currentFaceIndex);
|
||||
if (fault)
|
||||
{
|
||||
QString faultName = fault->name();
|
||||
|
||||
RimFault* rimFault = m_reservoirView->faultCollection()->findFaultByName(faultName);
|
||||
RimFault* rimFault = eclipseView->faultCollection()->findFaultByName(faultName);
|
||||
if (rimFault)
|
||||
{
|
||||
rimFault->showFault.setValueFromUi(!rimFault->showFault);
|
||||
|
@ -28,7 +28,7 @@
|
||||
#include "cafMouseState.h"
|
||||
#include "cvfStructGrid.h"
|
||||
|
||||
class RimReservoirView;
|
||||
class RimView;
|
||||
class QLabel;
|
||||
class QProgressBar;
|
||||
class RiuSimpleHistogramWidget;
|
||||
@ -56,7 +56,7 @@ public:
|
||||
void setDefaultView();
|
||||
cvf::Vec3d pointOfInterest();
|
||||
void setPointOfInterest(cvf::Vec3d poi);
|
||||
void setOwnerReservoirView(RimReservoirView * owner);
|
||||
void setOwnerReservoirView(RimView * owner);
|
||||
void setEnableMask(unsigned int mask);
|
||||
|
||||
void showInfoText(bool enable);
|
||||
@ -109,7 +109,7 @@ private:
|
||||
|
||||
cvf::Collection<cvf::OverlayItem> m_visibleLegends;
|
||||
|
||||
caf::PdmPointer<RimReservoirView> m_reservoirView;
|
||||
caf::PdmPointer<RimView> m_reservoirView;
|
||||
|
||||
size_t m_currentGridIdx;
|
||||
size_t m_currentCellIndex;
|
||||
|
Loading…
Reference in New Issue
Block a user