Slicer  4.10
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
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