#2331 Reordered Rim3dView header to pave way for Rim2dIntersectionView

This commit is contained in:
Jacob Støren 2018-01-11 15:44:22 +01:00
parent 5644684606
commit 591b72901f

View File

@ -19,6 +19,7 @@
#pragma once #pragma once
#include "RiuViewerToViewInterface.h" #include "RiuViewerToViewInterface.h"
#include "RimViewWindow.h"
#include "cafAppEnum.h" #include "cafAppEnum.h"
#include "cafPdmChildArrayField.h" #include "cafPdmChildArrayField.h"
@ -31,8 +32,6 @@
#include "RivCellSetEnum.h" #include "RivCellSetEnum.h"
#include "RimViewWindow.h"
#include "cvfArray.h" #include "cvfArray.h"
#include "cvfBase.h" #include "cvfBase.h"
#include "cvfCollection.h" #include "cvfCollection.h"
@ -78,49 +77,25 @@ public:
Rim3dView(void); Rim3dView(void);
virtual ~Rim3dView(void); virtual ~Rim3dView(void);
// 3D Viewer // Public fields:
RiuViewer* viewer();
caf::PdmField<QString> name; caf::PdmField<QString> name;
caf::PdmField<double> scaleZ; caf::PdmField<double> scaleZ;
void setCameraPosition(const cvf::Mat4d& cameraPosition) { m_cameraPosition = cameraPosition; }
void setCameraPointOfInterest(const cvf::Vec3d& cameraPointOfInterest) { m_cameraPointOfInterest = cameraPointOfInterest;}
caf::PdmField<bool> isPerspectiveView; caf::PdmField<bool> isPerspectiveView;
cvf::Color3f backgroundColor() const { return m_backgroundColor();}
caf::PdmField<int> maximumFrameRate; caf::PdmField<int> maximumFrameRate;
caf::PdmField<bool> hasUserRequestedAnimation; caf::PdmField<bool> hasUserRequestedAnimation;
virtual const RimPropertyFilterCollection* propertyFilterCollection() const = 0;
RimCellRangeFilterCollection* rangeFilterCollection();
const RimCellRangeFilterCollection* rangeFilterCollection() const;
bool hasOverridenRangeFilterCollection();
void setOverrideRangeFilterCollection(RimCellRangeFilterCollection* rfc);
void replaceRangeFilterCollectionWithOverride();
caf::PdmChildField<RimIntersectionCollection*> crossSectionCollection;
// Draw style // Draw style
enum MeshModeType enum MeshModeType { FULL_MESH, FAULTS_MESH, NO_MESH };
{ enum SurfaceModeType { SURFACE, FAULTS, NO_SURFACE };
FULL_MESH,
FAULTS_MESH,
NO_MESH
};
enum SurfaceModeType caf::PdmField< caf::AppEnum< MeshModeType > > meshMode;
{ caf::PdmField< caf::AppEnum< SurfaceModeType > > surfaceMode;
SURFACE,
FAULTS,
NO_SURFACE
};
caf::PdmField< caf::AppEnum< MeshModeType > > meshMode; caf::PdmChildField<RimIntersectionCollection*> crossSectionCollection;
caf::PdmField< caf::AppEnum< SurfaceModeType > > surfaceMode;
caf::PdmField<bool> showGridBox; RiuViewer* viewer();
void setMeshOnlyDrawstyle(); void setMeshOnlyDrawstyle();
void setMeshSurfDrawstyle(); void setMeshSurfDrawstyle();
@ -135,56 +110,50 @@ public:
bool isGridVisualizationMode() const; bool isGridVisualizationMode() const;
void setScaleZAndUpdate(double scaleZ); void setScaleZAndUpdate(double scaleZ);
virtual bool showActiveCellsOnly();
virtual bool isUsingFormationNames() const = 0;
cvf::ref<cvf::UByteArray> currentTotalCellVisibility();
virtual QImage snapshotWindowContent() override;
virtual void zoomAll() override;
void forceShowWindowOn();
// Animation // Animation
int currentTimeStep() const { return m_currentTimeStep;} int currentTimeStep() const { return m_currentTimeStep;}
void setCurrentTimeStep(int frameIdx); void setCurrentTimeStep(int frameIdx);
void setCurrentTimeStepAndUpdate(int frameIdx); void setCurrentTimeStepAndUpdate(int frameIdx) override;
QString timeStepName(int frameIdx) const override;
void updateCurrentTimeStepAndRedraw();
// Updating
void updateCurrentTimeStepAndRedraw() override;
virtual void scheduleGeometryRegen(RivCellSetEnum geometryType) = 0; virtual void scheduleGeometryRegen(RivCellSetEnum geometryType) = 0;
void scheduleCreateDisplayModelAndRedraw(); void scheduleCreateDisplayModelAndRedraw();
void createDisplayModelAndRedraw(); void createDisplayModelAndRedraw();
void createHighlightAndGridBoxDisplayModelWithRedraw(); void createHighlightAndGridBoxDisplayModelWithRedraw();
RimViewController* viewController() const;
bool isMasterView() const;
RimViewLinker* assosiatedViewLinker() const;
virtual bool isUsingFormationNames() const = 0;
cvf::ref<cvf::UByteArray> currentTotalCellVisibility();
virtual bool showActiveCellsOnly();
virtual void axisLabels(cvf::String* xLabel, cvf::String* yLabel, cvf::String* zLabel) = 0;
void selectOverlayInfoConfig();
virtual QImage snapshotWindowContent() override;
virtual void zoomAll() override;
cvf::ref<caf::DisplayCoordTransform> displayCoordTransform() const;
virtual QWidget* viewWidget() override;
void forceShowWindowOn();
public:
void updateGridBoxData(); void updateGridBoxData();
void updateAnnotationItems(); void updateAnnotationItems();
virtual const RimPropertyFilterCollection* propertyFilterCollection() const = 0;
RimCellRangeFilterCollection* rangeFilterCollection();
const RimCellRangeFilterCollection* rangeFilterCollection() const;
bool hasOverridenRangeFilterCollection();
void setOverrideRangeFilterCollection(RimCellRangeFilterCollection* rfc);
void replaceRangeFilterCollectionWithOverride();
RimViewController* viewController() const override;
bool isMasterView() const;
RimViewLinker* assosiatedViewLinker() const override;
cvf::ref<caf::DisplayCoordTransform> displayCoordTransform() const override;
virtual RimCase* ownerCase() const = 0; virtual RimCase* ownerCase() const = 0;
virtual caf::PdmFieldHandle* userDescriptionField() override { return &name; }
Rim3dOverlayInfoConfig* overlayInfoConfig() const; Rim3dOverlayInfoConfig* overlayInfoConfig() const;
protected: protected:
void setDefaultView(); void setDefaultView();
RimWellPathCollection* wellPathCollection();
void addWellPathsToModel(cvf::ModelBasicList* wellPathModelBasicList, void addWellPathsToModel(cvf::ModelBasicList* wellPathModelBasicList,
const cvf::BoundingBox& wellPathClipBoundingBox); const cvf::BoundingBox& wellPathClipBoundingBox);
@ -193,10 +162,13 @@ protected:
static void removeModelByName(cvf::Scene* scene, const cvf::String& modelName); static void removeModelByName(cvf::Scene* scene, const cvf::String& modelName);
virtual void createDisplayModel() = 0;
void createHighlightAndGridBoxDisplayModel(); void createHighlightAndGridBoxDisplayModel();
// Abstract methods to implement in subclasses
virtual void axisLabels(cvf::String* xLabel, cvf::String* yLabel, cvf::String* zLabel) = 0;
virtual void createDisplayModel() = 0;
virtual void createPartCollectionFromSelection(cvf::Collection<cvf::Part>* parts) = 0; virtual void createPartCollectionFromSelection(cvf::Collection<cvf::Part>* parts) = 0;
virtual void updateDisplayModelVisibility() = 0; virtual void updateDisplayModelVisibility() = 0;
@ -210,45 +182,54 @@ protected:
virtual void resetLegendsInViewer() = 0; virtual void resetLegendsInViewer() = 0;
virtual void calculateCurrentTotalCellVisibility(cvf::UByteArray* totalVisibility, int timeStep) = 0; virtual void calculateCurrentTotalCellVisibility(cvf::UByteArray* totalVisibility, int timeStep) = 0;
virtual void onLoadDataAndUpdate() = 0;
RimWellPathCollection* wellPathCollection();
QPointer<RiuViewer> m_viewer;
caf::PdmField<int> m_currentTimeStep;
caf::PdmChildField<Rim3dOverlayInfoConfig*> m_overlayInfoConfig;
caf::PdmChildField<RimCellRangeFilterCollection*> m_rangeFilterCollection;
caf::PdmChildField<RimCellRangeFilterCollection*> m_overrideRangeFilterCollection;
caf::PdmChildField<RimGridCollection*> m_gridCollection; // Overridden PdmObject methods:
// Overridden PDM methods: virtual caf::PdmFieldHandle* userDescriptionField() override { return &name; }
virtual void setupBeforeSave() override; virtual void setupBeforeSave() override;
virtual void fieldChangedByUi(const caf::PdmFieldHandle* changedField, const QVariant& oldValue, const QVariant& newValue) override; virtual void fieldChangedByUi(const caf::PdmFieldHandle* changedField, const QVariant& oldValue, const QVariant& newValue) override;
virtual void defineUiOrdering(QString uiConfigName, caf::PdmUiOrdering& uiOrdering) override; virtual void defineUiOrdering(QString uiConfigName, caf::PdmUiOrdering& uiOrdering) override;
// Overridden ViewWindow methods:
virtual QWidget* createViewWidget(QWidget* mainWindowParent) override; virtual QWidget* createViewWidget(QWidget* mainWindowParent) override;
virtual void updateViewWidgetAfterCreation() override; virtual void updateViewWidgetAfterCreation() override;
virtual void updateMdiWindowTitle() override; virtual void updateMdiWindowTitle() override;
virtual void deleteViewWidget() override; virtual void deleteViewWidget() override;
virtual QWidget* viewWidget() override;
cvf::ref<cvf::UByteArray> m_currentReservoirCellVisibility; protected: // Fields
caf::PdmField<int> m_currentTimeStep;
caf::PdmChildField<Rim3dOverlayInfoConfig*> m_overlayInfoConfig;
caf::PdmChildField<RimCellRangeFilterCollection*> m_rangeFilterCollection;
caf::PdmChildField<RimCellRangeFilterCollection*> m_overrideRangeFilterCollection;
cvf::ref<cvf::ModelBasicList> m_wellPathPipeVizModel; caf::PdmChildField<RimGridCollection*> m_gridCollection;
cvf::ref<cvf::ModelBasicList> m_crossSectionVizModel;
cvf::ref<cvf::ModelBasicList> m_highlightVizModel; protected:
QPointer<RiuViewer> m_viewer;
cvf::ref<cvf::UByteArray> m_currentReservoirCellVisibility;
cvf::ref<cvf::ModelBasicList> m_wellPathPipeVizModel;
cvf::ref<cvf::ModelBasicList> m_crossSectionVizModel;
cvf::ref<cvf::ModelBasicList> m_highlightVizModel;
private: private:
RimViewLinker* viewLinkerIfMasterView() const; RimViewLinker* viewLinkerIfMasterView() const;
friend class RiuViewer; // Implementation of RiuViewerToViewInterface
void endAnimation();
caf::PdmObjectHandle* implementingPdmObject() { return this; } virtual cvf::Color3f backgroundColor() const override { return m_backgroundColor();}
virtual void setCameraPosition(const cvf::Mat4d& cameraPosition) override { m_cameraPosition = cameraPosition; }
virtual void setCameraPointOfInterest(const cvf::Vec3d& cameraPointOfInterest) override { m_cameraPointOfInterest = cameraPointOfInterest;}
virtual QString timeStepName(int frameIdx) const override;
virtual void endAnimation() override;
virtual caf::PdmObjectHandle* implementingPdmObject() override { return this; }
virtual void handleMdiWindowClosed() override; virtual void handleMdiWindowClosed() override;
virtual void setMdiWindowGeometry(const RimMdiWindowGeometry& windowGeometry) override; virtual void setMdiWindowGeometry(const RimMdiWindowGeometry& windowGeometry) override;
virtual void selectOverlayInfoConfig() override;
private: private:
bool m_previousGridModeMeshLinesWasFaults; bool m_previousGridModeMeshLinesWasFaults;
@ -256,10 +237,7 @@ private:
caf::PdmField<cvf::Mat4d> m_cameraPosition; caf::PdmField<cvf::Mat4d> m_cameraPosition;
caf::PdmField<cvf::Vec3d> m_cameraPointOfInterest; caf::PdmField<cvf::Vec3d> m_cameraPointOfInterest;
caf::PdmField< cvf::Color3f > m_backgroundColor; caf::PdmField< cvf::Color3f > m_backgroundColor;
caf::PdmField<bool> showGridBox;
}; };