Slicer  4.8
Slicer is a multi-platform, free and open source software package for visualization and medical image computing
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()