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
vtkMRMLDiffusionTensorVolumeSliceDisplayNode.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: vtkMRMLFiberBundleGlyphDisplayNode.h,v $
10  Date: $Date: 2006/03/19 17:12:28 $
11  Version: $Revision: 1.6 $
12 
13  =========================================================================auto=*/
14 
15 #ifndef __vtkMRMLDiffusionTensorVolumeSliceDisplayNode_h
16 #define __vtkMRMLDiffusionTensorVolumeSliceDisplayNode_h
17 
20 
22 class vtkMatrix4x4;
23 class vtkPolyData;
24 
33 {
34  public:
37  void PrintSelf ( ostream& os, vtkIndent indent ) VTK_OVERRIDE;
38 
39  //--------------------------------------------------------------------------
41  //--------------------------------------------------------------------------
42 
43  virtual vtkMRMLNode* CreateNodeInstance () VTK_OVERRIDE;
44 
47  virtual void ReadXMLAttributes ( const char** atts ) VTK_OVERRIDE;
48 
51  virtual void WriteXML ( ostream& of, int indent ) VTK_OVERRIDE;
52 
53 
56  virtual void Copy ( vtkMRMLNode *node ) VTK_OVERRIDE;
57 
60  virtual const char* GetNodeTagName () VTK_OVERRIDE {return "DiffusionTensorVolumeSliceDisplayNode";}
61 
65  virtual void UpdateReferences() VTK_OVERRIDE;
66 
69  virtual void UpdateScene(vtkMRMLScene *scene) VTK_OVERRIDE;
70 
73  virtual void UpdateReferenceID(const char *oldID, const char *newID) VTK_OVERRIDE;
74 
77  virtual void ProcessMRMLEvents ( vtkObject * /*caller*/,
78  unsigned long /*event*/,
79  void * /*callData*/ ) VTK_OVERRIDE;
80 
83  virtual vtkAlgorithmOutput* GetOutputMeshConnection() VTK_OVERRIDE;
84 
87  virtual void UpdateAssignedAttribute() VTK_OVERRIDE;
88 
91  virtual void SetSliceImagePort(vtkAlgorithmOutput *imagePort) VTK_OVERRIDE;
92 
95  virtual void SetSlicePositionMatrix(vtkMatrix4x4 *matrix) VTK_OVERRIDE;
96 
99  virtual void SetSliceGlyphRotationMatrix(vtkMatrix4x4 *matrix) VTK_OVERRIDE;
100 
101  //--------------------------------------------------------------------------
103  //--------------------------------------------------------------------------
104 
105 
106  //--------------------------------------------------------------------------
110  //--------------------------------------------------------------------------
111 
112  enum
113  {
114  colorModeSolid = 0,
115  colorModeScalar = 1,
116  colorModeFunctionOfScalar = 2,
117  colorModeUseCellScalars = 3
118  };
119 
120  //--------------------------------------------------------------------------
122  //--------------------------------------------------------------------------
123 
127  this->SetColorMode ( this->colorModeSolid );
128  };
129 
133  this->SetColorMode ( this->colorModeScalar );
134  };
135 
140  this->SetColorMode ( this->colorModeFunctionOfScalar );
141  };
142 
151  this->SetColorMode ( this->colorModeUseCellScalars );
152  };
153 
154 
155 
156  //--------------------------------------------------------------------------
158  //--------------------------------------------------------------------------
159 
160 
161  //--------------------------------------------------------------------------
163  //--------------------------------------------------------------------------
164 
165 
167 
170  vtkMRMLDiffusionTensorDisplayPropertiesNode* GetDiffusionTensorDisplayPropertiesNode ( );
171 
174  void SetAndObserveDiffusionTensorDisplayPropertiesNodeID ( const char *ID );
175 
178  vtkGetStringMacro(DiffusionTensorDisplayPropertiesNodeID);
179 
182  static int GetNumberOfScalarInvariants();
183 
186  static int GetNthScalarInvariant(int i);
187 
188  protected:
193 
195 
199 
200  void SetDiffusionTensorDisplayPropertiesNodeID(const char* id);
201 
202  static std::vector<int> GetSupportedColorModes();
203 
204 };
205 
206 #endif
static vtkMRMLGlyphableVolumeSliceDisplayNode * New()
scale and orient glyph(s) according to tensor eigenvalues and eigenvectors.
void operator=(const vtkMRMLGlyphableVolumeSliceDisplayNode &)
MRML node to represent display properties for tractography.
void PrintSelf(ostream &os, vtkIndent indent) VTK_OVERRIDE
virtual vtkMRMLNode * CreateNodeInstance() VTK_OVERRIDE
MRMLNode methods.
virtual void UpdateReferences() VTK_OVERRIDE
A set of MRML Nodes that supports serialization and undo/redo.
Definition: vtkMRMLScene.h:54
MRML node to represent display properties for tractography.
void SetColorModeToScalar()
Color according to the tensors using various scalar invariants.
Abstract Superclass for all specific types of MRML nodes.
Definition: vtkMRMLNode.h:138
vtkMRMLDiffusionTensorDisplayPropertiesNode * DiffusionTensorDisplayPropertiesNode
ALL MRML nodes.
void SetColorModeToSolid()
Display Information: ColorMode for ALL nodes.