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
vtkMRMLGlyphableVolumeDisplayNode.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: vtkMRMLGlyphableVolumeDisplayNode.h,v $
10  Date: $Date: 2006/03/19 17:12:29 $
11  Version: $Revision: 1.3 $
12 
13 =========================================================================auto=*/
14 
15 #ifndef __vtkMRMLGlyphableVolumeDisplayNode_h
16 #define __vtkMRMLGlyphableVolumeDisplayNode_h
17 
18 // MRML includes
20 class vtkMRMLColorNode;
22 class vtkMRMLVolumeNode;
23 
24 // STD includes
25 #include <vector>
26 
31 {
32  public:
35  void PrintSelf(ostream& os, vtkIndent indent) VTK_OVERRIDE;
36 
37  virtual vtkMRMLNode* CreateNodeInstance() VTK_OVERRIDE;
38 
41  virtual void ReadXMLAttributes( const char** atts) VTK_OVERRIDE;
42 
45  virtual void WriteXML(ostream& of, int indent) VTK_OVERRIDE;
46 
49  virtual void Copy(vtkMRMLNode *node) VTK_OVERRIDE;
50 
53  virtual const char* GetNodeTagName() VTK_OVERRIDE {return "GlyphableVolumeDisplay";}
54 
57  virtual void UpdateReferenceID(const char *oldID, const char *newID) VTK_OVERRIDE;
58 
59  //--------------------------------------------------------------------------
61  //--------------------------------------------------------------------------
62 
64  enum
65  {
66  visModeScalar = 0,
67  visModeGlyph = 1,
68  visModeBoth = 2
69  };
70 
71  vtkGetMacro(VisualizationMode, int);
72  vtkSetMacro(VisualizationMode, int);
73 
74  //virtual vtkPolyData* ExecuteGlyphPipeLineAndGetPolyData( vtkImageData* );
75 
77  this->SetVisualizationMode(this->visModeScalar);
78  };
80  this->SetVisualizationMode(this->visModeGlyph);
81  };
83  this->SetVisualizationMode(this->visModeBoth);
84  };
85 
87  virtual void SetSceneReferences() VTK_OVERRIDE;
88 
92  virtual void UpdateReferences() VTK_OVERRIDE;
93 
96  virtual void UpdateScene(vtkMRMLScene *scene) VTK_OVERRIDE;
97 
100  void SetAndObserveGlyphColorNodeID(const char *GlyphColorNodeID);
101  void SetAndObserveGlyphColorNodeID(std::string GlyphColorNodeID);
102  vtkGetStringMacro(GlyphColorNodeID);
103 
106  vtkMRMLColorNode* GetGlyphColorNode();
107 
110  virtual void ProcessMRMLEvents ( vtkObject * /*caller*/,
111  unsigned long /*event*/,
112  void * /*callData*/ ) VTK_OVERRIDE;
115  void SetDefaultColorMap(/*int isLabelMap*/) VTK_OVERRIDE;
116 
119  virtual std::vector< vtkMRMLGlyphableVolumeSliceDisplayNode*>
121  {
122  vtkErrorMacro("Shouldn't be calling this");
123  return std::vector< vtkMRMLGlyphableVolumeSliceDisplayNode*>();
124  }
125 
126 
129  virtual void AddSliceGlyphDisplayNodes( vtkMRMLVolumeNode* vtkNotUsed(node) )
130  {
131  vtkErrorMacro("Shouldn't be calling this");
132  }
133 
137  virtual void GetDisplayScalarRange(double range[2]) VTK_OVERRIDE
138  {
139  this->Superclass::GetDisplayScalarRange(range);
140  }
141 
142 protected:
147 
149 
150  void SetGlyphColorNodeID(const char* id);
151 
153 
155 
156 };
157 
158 #endif
159 
virtual std::vector< vtkMRMLGlyphableVolumeSliceDisplayNode * > GetSliceGlyphDisplayNodes(vtkMRMLVolumeNode *vtkNotUsed(node))
get associated slice glyph display node or NULL if not set
void operator=(const vtkMRMLScalarVolumeDisplayNode &)
virtual void UpdateReferences() VTK_OVERRIDE
void PrintSelf(ostream &os, vtkIndent indent) VTK_OVERRIDE
virtual vtkMRMLNode * CreateNodeInstance() VTK_OVERRIDE
Create instance of the default node. Like New only virtual.
virtual void UpdateReferenceID(const char *oldID, const char *newID) VTK_OVERRIDE
Update the stored reference to another node in the scene.
virtual void UpdateScene(vtkMRMLScene *scene) VTK_OVERRIDE
Finds the storage node and read the data.
virtual void SetDefaultColorMap() VTK_OVERRIDE
set gray colormap or override in subclass
static vtkMRMLScalarVolumeDisplayNode * New()
virtual void SetSceneReferences() VTK_OVERRIDE
Mark the color and views nodes as references.
A set of MRML Nodes that supports serialization and undo/redo.
Definition: vtkMRMLScene.h:54
MRML node to represent display properties for tractography.
Abstract MRML node to represent color information.
MRML node for representing a volume (image stack).
virtual void AddSliceGlyphDisplayNodes(vtkMRMLVolumeNode *vtkNotUsed(node))
add slice glyph display nodes if not already present and return it
virtual void ProcessMRMLEvents(vtkObject *, unsigned long, void *) VTK_OVERRIDE
alternative method to propagate events generated in Display nodes
Abstract Superclass for all specific types of MRML nodes.
Definition: vtkMRMLNode.h:135
virtual void GetDisplayScalarRange(double range[2]) VTK_OVERRIDE
MRML node for representing a volume display attributes.
MRML node for representing a volume display attributes.