Slicer  4.8
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
vtkMRMLVectorVolumeDisplayNode.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: vtkMRMLVectorVolumeDisplayNode.h,v $
10  Date: $Date: 2006/03/19 17:12:29 $
11  Version: $Revision: 1.3 $
12 
13 =========================================================================auto=*/
14 
15 #ifndef __vtkMRMLVectorVolumeDisplayNode_h
16 #define __vtkMRMLVectorVolumeDisplayNode_h
17 
19 
20 class vtkAlgorithmOutput;
21 class vtkImageData;
22 class vtkImageShiftScale;
23 class vtkImageExtractComponents;
24 class vtkImageRGBToHSI;
25 
36 {
37  public:
40  void PrintSelf(ostream& os, vtkIndent indent) VTK_OVERRIDE;
41 
42  virtual vtkMRMLNode* CreateNodeInstance() VTK_OVERRIDE;
43 
46  virtual void ReadXMLAttributes( const char** atts) VTK_OVERRIDE;
47 
50  virtual void WriteXML(ostream& of, int indent) VTK_OVERRIDE;
51 
54  virtual void Copy(vtkMRMLNode *node) VTK_OVERRIDE;
55 
58  virtual const char* GetNodeTagName() VTK_OVERRIDE {return "VectorVolumeDisplay";}
59 
60  //--------------------------------------------------------------------------
62  //--------------------------------------------------------------------------
63 
64  enum
65  {
66  scalarModeMagnitude = 0
67  };
68  vtkGetMacro(ScalarMode, int);
69  vtkSetMacro(ScalarMode, int);
70 
72  this->SetScalarMode(this->scalarModeMagnitude);
73  }
74 
75  enum
76  {
77  glyphModeLines = 1,
78  glyphModeTubes = 2
79  };
80  vtkGetMacro(GlyphMode, int);
81  vtkSetMacro(GlyphMode, int);
82 
84  this->SetGlyphMode(this->glyphModeLines);
85  };
87  this->SetGlyphMode(this->glyphModeTubes);
88  };
89 
90  //virtual vtkPolyData* ExecuteGlyphPipeLineAndGetPolyData( vtkImageData* ) {return NULL;};
91 
92  virtual void SetDefaultColorMap() VTK_OVERRIDE {}
93 
96  virtual void ProcessMRMLEvents ( vtkObject * /*caller*/,
97  unsigned long /*event*/,
98  void * /*callData*/ ) VTK_OVERRIDE;
99 
101  virtual vtkAlgorithmOutput* GetInputImageDataConnection() VTK_OVERRIDE;
102 
103  virtual void UpdateImageDataPipeline() VTK_OVERRIDE;
104 
108  virtual std::vector< vtkMRMLGlyphableVolumeSliceDisplayNode*>
109  GetSliceGlyphDisplayNodes( vtkMRMLVolumeNode* vtkNotUsed(node) ) VTK_OVERRIDE
110  {
111  return std::vector< vtkMRMLGlyphableVolumeSliceDisplayNode*>();
112  }
113 
116  vtkGetObjectMacro (ShiftScale, vtkImageShiftScale);
117  vtkGetObjectMacro (RGBToHSI, vtkImageRGBToHSI);
118  vtkGetObjectMacro (ExtractIntensity, vtkImageExtractComponents);
119  vtkGetObjectMacro (AppendComponents, vtkImageAppendComponents);
120  vtkGetObjectMacro (Threshold, vtkImageThreshold);
121 
122 protected:
127 
129  virtual void SetInputToImageDataPipeline(vtkAlgorithmOutput *imageDataConnection) VTK_OVERRIDE;
130  virtual vtkAlgorithmOutput* GetScalarImageDataConnection() VTK_OVERRIDE;
131 
134 
135  vtkImageShiftScale *ShiftScale;
136  vtkImageRGBToHSI *RGBToHSI;
137  vtkImageExtractComponents *ExtractIntensity;
138 };
139 
140 #endif
virtual vtkAlgorithmOutput * GetInputImageDataConnection() VTK_OVERRIDE
Gets the pipeline input.
virtual vtkMRMLNode * CreateNodeInstance() VTK_OVERRIDE
Create instance of the default node. Like New only virtual.
MRML node for representing a volume (image stack).
virtual void SetInputToImageDataPipeline(vtkAlgorithmOutput *imageDataConnection) VTK_OVERRIDE
virtual vtkAlgorithmOutput * GetScalarImageDataConnection()
vtkImageExtractComponents * ExtractIntensity
virtual void UpdateImageDataPipeline()
Update the pipeline based on this node attributes.
virtual void ProcessMRMLEvents(vtkObject *, unsigned long, void *) VTK_OVERRIDE
alternative method to propagate events generated in Display nodes
void operator=(const vtkMRMLGlyphableVolumeDisplayNode &)
MRML node for representing a volume (image stack).
virtual std::vector< vtkMRMLGlyphableVolumeSliceDisplayNode * > GetSliceGlyphDisplayNodes(vtkMRMLVolumeNode *vtkNotUsed(node)) VTK_OVERRIDE
virtual void SetDefaultColorMap() VTK_OVERRIDE
set gray colormap
void PrintSelf(ostream &os, vtkIndent indent) VTK_OVERRIDE
Abstract Superclass for all specific types of MRML nodes.
Definition: vtkMRMLNode.h:135
MRML node for representing a volume display attributes.
static vtkMRMLGlyphableVolumeDisplayNode * New()