Slicer 5.9
Slicer is a multi-platform, free and open source software package for visualization and medical image computing
Loading...
Searching...
No Matches
vtkMRMLVolumeRenderingDisplayNode.h
Go to the documentation of this file.
1/*=auto=========================================================================
2
3 Portions (c) Copyright 2005 Brigham and Women's Hospital (BWH) All Rights Reserved.
4
5 See COPYRIGHT.txt
6 or http://www.slicer.org/copyright/copyright.txt for details.
7
8 Program: 3D Slicer
9 Module: $RCSfile: vtkMRMLVolumeRenderingDisplayNode.h,v $
10 Date: $Date: 2006/03/19 17:12:29 $
11 Version: $Revision: 1.3 $
12
13=========================================================================auto=*/
14
15#ifndef __vtkMRMLVolumeRenderingDisplayNode_h
16#define __vtkMRMLVolumeRenderingDisplayNode_h
17
18// Volume Rendering includes
19#include "vtkSlicerVolumeRenderingModuleMRMLExport.h"
20
21// MRML includes
22#include "vtkMRMLDisplayNode.h"
23class vtkIntArray;
28class vtkMRMLViewNode;
31
34class VTK_SLICER_VOLUMERENDERING_MODULE_MRML_EXPORT vtkMRMLVolumeRenderingDisplayNode : public vtkMRMLDisplayNode
35{
36public:
38 void PrintSelf(ostream& os, vtkIndent indent) override;
39
41 void ReadXMLAttributes(const char** atts) override;
42
44 void WriteXML(ostream& of, int indent) override;
45
47 void Copy(vtkMRMLNode* node) override;
48
49 const char* GetVolumeNodeID();
51
53 void SetAndObserveVolumePropertyNodeID(const char* volumePropertyNodeID);
55
57 void SetAndObserveShaderPropertyNodeID(const char* shaderPropertyNodeID);
60
61 const char* GetROINodeID();
62 void SetAndObserveROINodeID(const char* roiNodeID);
67
69
71
72 vtkSetMacro(CroppingEnabled, int);
73 vtkGetMacro(CroppingEnabled, int);
74 vtkBooleanMacro(CroppingEnabled, int);
75
76 vtkSetVector2Macro(Threshold, double);
77 vtkGetVectorMacro(Threshold, double, 2);
78
79 vtkGetMacro(FollowVolumeDisplayNode, int);
80 vtkSetMacro(FollowVolumeDisplayNode, int);
81
84
85 vtkGetMacro(UseSingleVolumeProperty, int);
86 vtkSetMacro(UseSingleVolumeProperty, int);
87
88 vtkSetVector2Macro(WindowLevel, double);
89 vtkGetVectorMacro(WindowLevel, double, 2);
90
92
95 vtkSetClampMacro(ClippingSoftEdgeVoxels, double, 0.0, VTK_DOUBLE_MAX);
96 vtkGetMacro(ClippingSoftEdgeVoxels, double);
98
100
104 vtkSetMacro(ClippingBlankVoxelValue, double);
105 vtkGetMacro(ClippingBlankVoxelValue, double);
107
109
112 vtkSetMacro(AutoClippingBlankVoxelValue, bool);
113 vtkGetMacro(AutoClippingBlankVoxelValue, bool);
114 vtkBooleanMacro(AutoClippingBlankVoxelValue, bool);
116
118
124
125protected:
130
131 void ProcessMRMLEvents(vtkObject* caller, unsigned long event, void* callData) override;
132
137 static bool IsFastClippingAvailable(vtkMRMLClipNode* clipNode, vtkMRMLMessageCollection* userMessages = nullptr);
138
141 static const char* ROINodeReferenceRole;
145
146protected:
149
150 double Threshold[2];
151
155
157
159 double WindowLevel[2];
160
162
165};
166
167#endif
MRML node to represent three clipping planes.
MRML node to represent an ROI markup.
friend class vtkMRMLScene
vtkMRMLShaderPropertyNode volume shader custom code and custom uniform variables defined by users or ...
MRML node to represent a 3D view.
MRML node for representing a volume (image stack).
vtkMRMLVolumePropertyNode contains the transfer functions (scalar opacity, color and gradient opacity...
int FollowVolumeDisplayNode
Follow window/level and thresholding setting in volume display node.
vtkMRMLVolumeRenderingDisplayNode(const vtkMRMLVolumeRenderingDisplayNode &)
int CroppingEnabled
Flag indicating whether cropping is enabled.
vtkMRMLShaderPropertyNode * GetShaderPropertyNode()
void PrintSelf(ostream &os, vtkIndent indent) override
vtkMRMLVolumeNode * GetVolumeNode()
vtkMRMLShaderPropertyNode * GetOrCreateShaderPropertyNode(vtkMRMLScene *mrmlScene)
void operator=(const vtkMRMLVolumeRenderingDisplayNode &)
vtkMRMLVolumePropertyNode * GetVolumePropertyNode()
vtkMRMLViewNode * GetFirstViewNode()
vtkMRMLMarkupsROINode * GetMarkupsROINode()
static bool IsFastClippingAvailable(vtkMRMLClipNode *clipNode, vtkMRMLMessageCollection *userMessages=nullptr)
void Copy(vtkMRMLNode *node) override
Copy the node's attributes to this object.
void SetAndObserveVolumePropertyNodeID(const char *volumePropertyNodeID)
vtkMRMLDisplayableNode * GetROINode()
vtkMRMLAnnotationROINode * GetAnnotationROINode()
Deprecated. Use GetROINode() instead for retrieving the markups ROI node.
void SetAndObserveROINodeID(const char *roiNodeID)
void WriteXML(ostream &of, int indent) override
Write this node's information to a MRML file in XML format.
void ProcessMRMLEvents(vtkObject *caller, unsigned long event, void *callData) override
void SetAndObserveShaderPropertyNodeID(const char *shaderPropertyNodeID)
void ReadXMLAttributes(const char **atts) override
Set node attributes.
bool IsFastClippingAvailable(vtkMRMLMessageCollection *userMessages=nullptr)