Support linking of 2D intersection views

* Major refactor from RimGridView to Rim3dView
* Move view linker/controller functions to Rim3dView
* Add bitmask to define the content of a 3D view
* Link views based on matching content
* Enable bit mask operators at global scope
* Make it possible to use 2d intersection views as comparison views
* Fix crash when a view used as comparison view is deleted
* Move unlinking to Rim3dView

* Add options to snapshot only 3D views/plots as part of regression testing
* WBS plot: Improve default name, hide axis for some tracks
This commit is contained in:
Magne Sjaastad
2022-11-24 10:46:54 +01:00
committed by GitHub
parent 99e9944e6e
commit 82968ca1a9
42 changed files with 609 additions and 418 deletions

View File

@@ -115,6 +115,8 @@ public:
QString name() const;
QString autoName() const;
virtual RiaDefines::View3dContent viewContent() const = 0;
void setMeshOnlyDrawstyle();
void setMeshSurfDrawstyle();
void setSurfOnlyDrawstyle();
@@ -180,6 +182,9 @@ public:
std::set<Rim3dView*> viewsUsingThisAsComparisonView();
void updateMdiWindowTitle() override;
RimViewLinker* assosiatedViewLinker() const override;
RimViewController* viewController() const override;
protected:
static void removeModelByName( cvf::Scene* scene, const cvf::String& modelName );
@@ -292,6 +297,8 @@ private:
Rim3dView* prepareComparisonView();
void restoreComparisonView();
RimViewLinker* viewLinkerIfMasterView() const;
private:
QPointer<RiuViewer> m_viewer;
QPointer<RiuViewer> m_overrideViewer;