Slicer 5.9
Slicer is a multi-platform, free and open source software package for visualization and medical image computing
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
qMRMLThreeDWidget.h
Go to the documentation of this file.
1/*==============================================================================
2
3 Program: 3D Slicer
4
5 Copyright (c) Kitware Inc.
6
7 See COPYRIGHT.txt
8 or http://www.slicer.org/copyright/copyright.txt for details.
9
10 Unless required by applicable law or agreed to in writing, software
11 distributed under the License is distributed on an "AS IS" BASIS,
12 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 See the License for the specific language governing permissions and
14 limitations under the License.
15
16 This file was originally developed by Julien Finet, Kitware Inc.
17 and was partially funded by NIH grant 3P41RR013218-12S1
18
19==============================================================================*/
20
21#ifndef __qMRMLThreeDWidget_h
22#define __qMRMLThreeDWidget_h
23
24// qMRMLWidget includes
27class qMRMLThreeDView;
28class qMRMLThreeDWidgetPrivate;
30
31// MRML includes
32class vtkMRMLViewNode;
33
34// MRMLLogic includes
36
37// VTK includes
38class vtkCollection;
39
40class QMRML_WIDGETS_EXPORT qMRMLThreeDWidget : public qMRMLAbstractViewWidget
41{
42 Q_OBJECT
43
44public:
47
49 explicit qMRMLThreeDWidget(QWidget* parent = nullptr);
51
54 Q_INVOKABLE qMRMLViewControllerBar* controllerWidget() const override;
55
57 Q_INVOKABLE vtkMRMLViewNode* mrmlViewNode()const;
58 Q_INVOKABLE vtkMRMLAbstractViewNode* mrmlAbstractViewNode()const override;
59
61 Q_INVOKABLE vtkMRMLViewLogic* viewLogic()const;
62 Q_INVOKABLE vtkMRMLAbstractLogic* logic()const override;
63
67 Q_INVOKABLE qMRMLThreeDView* threeDView()const;
68 Q_INVOKABLE QWidget* viewWidget()const override;
69
71 Q_INVOKABLE void addDisplayableManager(const QString& displayableManager);
72 Q_INVOKABLE void getDisplayableManagers(vtkCollection* displayableManagers);
73
75 Q_INVOKABLE void setQuadBufferStereoSupportEnabled(bool value);
76
77public slots:
79 void setMRMLViewNode(vtkMRMLViewNode* newViewNode);
81
82protected:
83 QScopedPointer<qMRMLThreeDWidgetPrivate> d_ptr;
84
85private:
86 Q_DECLARE_PRIVATE(qMRMLThreeDWidget);
87 Q_DISABLE_COPY(qMRMLThreeDWidget);
88};
89
90#endif
qMRMLAbstractViewWidget(QWidget *parent=nullptr)
Constructors.
3D view for view nodes. For performance reasons, the view block refreshes when the scene is in batch ...
void setMRMLViewNode(vtkMRMLViewNode *newViewNode)
Set the current viewNode to observe.
QScopedPointer< qMRMLThreeDWidgetPrivate > d_ptr
qMRMLAbstractViewWidget Superclass
Superclass typedef.
~qMRMLThreeDWidget() override
Q_INVOKABLE void setQuadBufferStereoSupportEnabled(bool value)
Q_INVOKABLE vtkMRMLAbstractViewNode * mrmlAbstractViewNode() const override
Get the View node observed by view.
Q_INVOKABLE qMRMLViewControllerBar * controllerWidget() const override
Get slice controller.
Q_INVOKABLE QWidget * viewWidget() const override
Q_INVOKABLE void addDisplayableManager(const QString &displayableManager)
Q_INVOKABLE vtkMRMLViewLogic * viewLogic() const
qMRMLThreeDWidget(QWidget *parent=nullptr)
Constructors.
Q_INVOKABLE void getDisplayableManagers(vtkCollection *displayableManagers)
Q_INVOKABLE qMRMLThreeDViewControllerWidget * threeDController() const
Get slice controller.
Q_INVOKABLE vtkMRMLAbstractLogic * logic() const override
Q_INVOKABLE qMRMLThreeDView * threeDView() const
Q_INVOKABLE vtkMRMLViewNode * mrmlViewNode() const
Get the 3D View node observed by view.
void setMRMLAbstractViewNode(vtkMRMLAbstractViewNode *newViewNode) override
Superclass for MRML logic classes.
Abstract MRML node to represent a view. The class holds the properties common to any view type (3D,...
Slicer logic class for view manipulation.
MRML node to represent a 3D view.