Slicer 5.4
Slicer is a multi-platform, free and open source software package for visualization and medical image computing
Loading...
Searching...
No Matches
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
20class vtkAlgorithmOutput;
21class vtkImageData;
22class vtkImageShiftScale;
23class vtkImageExtractComponents;
24class vtkImageRGBToHSI;
25
36{
37 public:
40 void PrintSelf(ostream& os, vtkIndent indent) override;
41
43
46 void ReadXMLAttributes( const char** atts) override;
47
50 void WriteXML(ostream& of, int indent) override;
51
55
58 const char* GetNodeTagName() 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 nullptr;};
91
92 void SetDefaultColorMap() override {}
93
96 void ProcessMRMLEvents ( vtkObject * /*caller*/,
97 unsigned long /*event*/,
98 void * /*callData*/ ) override;
99
101 vtkAlgorithmOutput* GetInputImageDataConnection() override;
102
103 void UpdateImageDataPipeline() override;
104
108 std::vector< vtkMRMLGlyphableVolumeSliceDisplayNode*>
109 GetSliceGlyphDisplayNodes( vtkMRMLVolumeNode* vtkNotUsed(node) ) 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
122protected:
127
129 void SetInputToImageDataPipeline(vtkAlgorithmOutput *imageDataConnection) override;
130 vtkAlgorithmOutput* GetScalarImageDataConnection() override;
131
134
135 vtkImageShiftScale *ShiftScale;
136 vtkImageRGBToHSI *RGBToHSI;
137 vtkImageExtractComponents *ExtractIntensity;
138};
139
140#endif
MRML node for representing a volume display attributes.
Abstract Superclass for all specific types of MRML nodes.
MRML node for representing a volume (image stack).
vtkMRMLNode * CreateNodeInstance() override
Create instance of the default node. Like New only virtual.
vtkAlgorithmOutput * GetInputImageDataConnection() override
Get the input of the pipeline.
void PrintSelf(ostream &os, vtkIndent indent) override
void ReadXMLAttributes(const char **atts) override
Set node attributes.
void ProcessMRMLEvents(vtkObject *, unsigned long, void *) override
alternative method to propagate events generated in Display nodes
~vtkMRMLVectorVolumeDisplayNode() override
std::vector< vtkMRMLGlyphableVolumeSliceDisplayNode * > GetSliceGlyphDisplayNodes(vtkMRMLVolumeNode *vtkNotUsed(node)) override
void UpdateImageDataPipeline() override
Update the pipeline based on this node attributes.
void operator=(const vtkMRMLVectorVolumeDisplayNode &)
vtkMRMLCopyContentMacro(vtkMRMLVectorVolumeDisplayNode)
void SetInputToImageDataPipeline(vtkAlgorithmOutput *imageDataConnection) override
Set the input of the pipeline.
const char * GetNodeTagName() override
Get node XML tag name (like Volume, Model)
void WriteXML(ostream &of, int indent) override
Write this node's information to a MRML file in XML format.
void SetDefaultColorMap() override
set gray colormap
vtkAlgorithmOutput * GetScalarImageDataConnection() override
static vtkMRMLVectorVolumeDisplayNode * New()
vtkMRMLVectorVolumeDisplayNode(const vtkMRMLVectorVolumeDisplayNode &)
MRML node for representing a volume (image stack).