#2331 Introduce new intermediate class RimGridView

This commit is contained in:
Jacob Støren
2018-01-15 14:52:22 +01:00
parent 1bbd3ade7b
commit b092565a61
48 changed files with 1387 additions and 508 deletions

View File

@@ -93,8 +93,6 @@ public:
caf::PdmField< caf::AppEnum< MeshModeType > > meshMode;
caf::PdmField< caf::AppEnum< SurfaceModeType > > surfaceMode;
caf::PdmChildField<RimIntersectionCollection*> crossSectionCollection;
RiuViewer* viewer();
void setMeshOnlyDrawstyle();
@@ -105,14 +103,12 @@ public:
void disableLighting(bool disable);
bool isLightingDisabled() const;
void showGridCells(bool enableGridCells);
bool isGridVisualizationMode() const;
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;
@@ -132,22 +128,11 @@ public:
void updateGridBoxData();
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;
Rim3dOverlayInfoConfig* overlayInfoConfig() const;
protected:
@@ -160,8 +145,6 @@ protected:
void addDynamicWellPathsToModel(cvf::ModelBasicList* wellPathModelBasicList,
const cvf::BoundingBox& wellPathClipBoundingBox);
static void removeModelByName(cvf::Scene* scene, const cvf::String& modelName);
void createHighlightAndGridBoxDisplayModel();
// Abstract methods to implement in subclasses
@@ -175,35 +158,25 @@ protected:
virtual void clampCurrentTimestep() = 0;
virtual void updateCurrentTimeStep() = 0;
virtual void onTimeStepChanged() = 0;
virtual void updateStaticCellColors() = 0;
virtual void updateScaleTransform() = 0;
virtual cvf::Transform* scaleTransform() = 0;
virtual void resetLegendsInViewer() = 0;
virtual void calculateCurrentTotalCellVisibility(cvf::UByteArray* totalVisibility, int timeStep) = 0;
protected: // Fields
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;
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:
RimViewLinker* viewLinkerIfMasterView() const;
// Overridden PdmObject methods:
virtual caf::PdmFieldHandle* userDescriptionField() override { return &name; }
@@ -231,10 +204,8 @@ private:
virtual caf::PdmObjectHandle* implementingPdmObject() override { return this; }
virtual void handleMdiWindowClosed() override;
virtual void setMdiWindowGeometry(const RimMdiWindowGeometry& windowGeometry) override;
virtual void selectOverlayInfoConfig() override;
private:
bool m_previousGridModeMeshLinesWasFaults;
caf::PdmField<bool> m_disableLighting;
caf::PdmField<cvf::Mat4d> m_cameraPosition;
caf::PdmField<cvf::Vec3d> m_cameraPointOfInterest;
@@ -249,12 +220,11 @@ class RimGridView : public Rim3dView
public:
RimGridView();
virtual ~RimGridView(void);
#if 0
#if 1
caf::PdmChildField<RimIntersectionCollection*> crossSectionCollection;
void showGridCells(bool enableGridCells);
bool isGridVisualizationMode() const;
cvf::ref<cvf::UByteArray> currentTotalCellVisibility();
@@ -267,14 +237,14 @@ public:
void replaceRangeFilterCollectionWithOverride();
RimViewController* viewController() const override;
bool isMasterView() const;
RimViewLinker* assosiatedViewLinker() const override;
Rim3dOverlayInfoConfig* overlayInfoConfig() const;
protected:
static void removeModelByName(cvf::Scene* scene, const cvf::String& modelName);
virtual void axisLabels(cvf::String* xLabel, cvf::String* yLabel, cvf::String* zLabel) = 0;
virtual void onTimeStepChanged() override;
virtual void calculateCurrentTotalCellVisibility(cvf::UByteArray* totalVisibility, int timeStep) = 0;
virtual void fieldChangedByUi(const caf::PdmFieldHandle* changedField, const QVariant& oldValue, const QVariant& newValue) override;