Slicer  4.10
Slicer is a multi-platform, free and open source software package for visualization and medical image computing
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"
24 class vtkMRMLVolumeNode;
26 class vtkMRMLViewNode;
27 
28 class vtkIntArray;
29 
33 class VTK_SLICER_VOLUMERENDERING_MODULE_MRML_EXPORT vtkMRMLVolumeRenderingDisplayNode
34  : public vtkMRMLDisplayNode
35 {
36 public:
38  void PrintSelf(ostream& os, vtkIndent indent) VTK_OVERRIDE;
39 
41  virtual void ReadXMLAttributes( const char** atts) VTK_OVERRIDE;
42 
44  virtual void WriteXML(ostream& of, int indent) VTK_OVERRIDE;
45 
47  virtual void Copy(vtkMRMLNode *node) VTK_OVERRIDE;
48 
49  const char* GetVolumeNodeID();
50  void SetAndObserveVolumeNodeID(const char *volumeNodeID);
51  vtkMRMLVolumeNode* GetVolumeNode();
52 
53  const char* GetVolumePropertyNodeID();
54  void SetAndObserveVolumePropertyNodeID(const char *volumePropertyNodeID);
55  vtkMRMLVolumePropertyNode* GetVolumePropertyNode();
56 
57  const char* GetROINodeID();
58  void SetAndObserveROINodeID(const char *roiNodeID);
59  vtkMRMLAnnotationROINode* GetROINode();
60 
61  vtkMRMLViewNode* GetFirstViewNode();
62 
63  double GetSampleDistance();
64 
65  vtkSetMacro(CroppingEnabled,int);
66  vtkGetMacro(CroppingEnabled,int);
67  vtkBooleanMacro(CroppingEnabled,int);
68 
69  vtkSetVector2Macro(Threshold, double);
70  vtkGetVectorMacro(Threshold, double, 2);
71 
72  vtkGetMacro(FollowVolumeDisplayNode, int);
73  vtkSetMacro(FollowVolumeDisplayNode, int);
74 
75  vtkGetMacro(IgnoreVolumeDisplayNodeThreshold, int);
76  vtkSetMacro(IgnoreVolumeDisplayNodeThreshold, int);
77 
78  vtkGetMacro(UseSingleVolumeProperty, int);
79  vtkSetMacro(UseSingleVolumeProperty, int);
80 
81  vtkSetVector2Macro(WindowLevel, double);
82  vtkGetVectorMacro(WindowLevel, double, 2);
83 
84 protected:
89 
90  virtual void ProcessMRMLEvents(vtkObject *caller, unsigned long event, void *callData) VTK_OVERRIDE;
91 
92  static const char* VolumeNodeReferenceRole;
94  static const char* VolumePropertyNodeReferenceRole;
96  static const char* ROINodeReferenceRole;
98 
99 protected:
102 
103  double Threshold[2];
104 
108 
110 
112  double WindowLevel[2];
113 };
114 
115 #endif
116 
int CroppingEnabled
Flag indicating whether cropping is enabled.
virtual void Copy(vtkMRMLNode *node) VTK_OVERRIDE
Copy the node's attributes to this object.
virtual void ProcessMRMLEvents(vtkObject *caller, unsigned long event, void *callData) VTK_OVERRIDE
int FollowVolumeDisplayNode
Follow window/level and thresholding setting in volume display node.
void operator=(const vtkMRMLDisplayNode &)
MRML node for representing a volume (image stack).
MRML node to represent a 3D view.
void PrintSelf(ostream &os, vtkIndent indent) VTK_OVERRIDE
virtual void WriteXML(ostream &of, int indent) VTK_OVERRIDE
Abstract class that contains graphical display properties for displayable nodes.
Abstract Superclass for all specific types of MRML nodes.
Definition: vtkMRMLNode.h:138
vtkMRMLVolumePropertyNode contains the transfer functions (scalar opacity, color and gradient opacity...
virtual void ReadXMLAttributes(const char **atts) VTK_OVERRIDE