Slicer  4.10
Slicer is a multi-platform, free and open source software package for visualization and medical image computing
vtkMRMLViewNode.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: vtkMRMLViewNode.h,v $
10  Date: $Date: 2006/03/19 17:12:28 $
11  Version: $Revision: 1.6 $
12 
13 =========================================================================auto=*/
14 
15 #ifndef __vtkMRMLViewNode_h
16 #define __vtkMRMLViewNode_h
17 
18 // VTK includes
20 
24 class VTK_MRML_EXPORT vtkMRMLViewNode
26 {
27 public:
28  static vtkMRMLViewNode *New();
30  void PrintSelf(ostream& os, vtkIndent indent) VTK_OVERRIDE;
31 
32  //--------------------------------------------------------------------------
34  //--------------------------------------------------------------------------
35 
36  virtual vtkMRMLNode* CreateNodeInstance() VTK_OVERRIDE;
37 
39  virtual void ReadXMLAttributes( const char** atts) VTK_OVERRIDE;
40 
42  virtual void WriteXML(ostream& of, int indent) VTK_OVERRIDE;
43 
45  virtual void Copy(vtkMRMLNode *node) VTK_OVERRIDE;
46 
48  virtual const char* GetNodeTagName() VTK_OVERRIDE;
49 
51  static double* defaultBackgroundColor();
52  static double* defaultBackgroundColor2();
53 
55  vtkGetMacro(BoxVisible, int);
56  vtkSetMacro(BoxVisible, int);
57 
59  vtkGetMacro(AxisLabelsVisible, int);
60  vtkSetMacro(AxisLabelsVisible, int);
61 
63  vtkGetMacro(AxisLabelsCameraDependent, int);
64  vtkSetMacro(AxisLabelsCameraDependent, int);
65 
67  vtkGetMacro(FiducialsVisible, int);
68  vtkSetMacro(FiducialsVisible, int);
69 
70  vtkGetMacro(FiducialLabelsVisible, int);
71  vtkSetMacro(FiducialLabelsVisible, int);
72 
74  vtkGetMacro(FieldOfView, double);
75  vtkSetMacro(FieldOfView, double);
76 
78  vtkGetMacro(LetterSize, double);
79  vtkSetMacro(LetterSize, double);
80 
82  vtkGetMacro(AnimationMode, int);
83  vtkSetMacro(AnimationMode, int);
84  static const char* GetAnimationModeAsString(int id);
85  static int GetAnimationModeFromString(const char* name);
86 
87  vtkGetMacro(ViewAxisMode, int);
88  vtkSetMacro(ViewAxisMode, int);
89  static const char* GetViewAxisModeAsString(int id);
90  static int GetViewAxisModeFromString(const char* name);
91 
93  vtkGetMacro(SpinDirection, int);
94  vtkSetMacro(SpinDirection, int);
95  static const char* GetSpinDirectionAsString(int id);
96  static int GetSpinDirectionFromString(const char* name);
97 
99  vtkGetMacro(SpinDegrees, double);
100  vtkSetMacro(SpinDegrees, double);
101 
102  vtkGetMacro(RotateDegrees, double);
103  vtkSetMacro(RotateDegrees, double);
104 
106  vtkGetMacro(AnimationMs, int);
107  vtkSetMacro(AnimationMs, int);
108 
110  vtkGetMacro(RockLength, int);
111  vtkSetMacro(RockLength, int);
112 
114  vtkGetMacro(RockCount, int);
115  vtkSetMacro(RockCount, int);
116 
118  vtkGetMacro(StereoType, int);
119  vtkSetMacro(StereoType, int);
120  static const char* GetStereoTypeAsString(int id);
121  static int GetStereoTypeFromString(const char* name);
122 
124  vtkGetMacro(RenderMode, int);
125  vtkSetMacro(RenderMode, int);
126  static const char* GetRenderModeAsString(int id);
127  static int GetRenderModeFromString(const char* name);
128 
131  vtkGetMacro(UseDepthPeeling, int);
132  vtkSetMacro(UseDepthPeeling, int);
133 
136  vtkGetMacro(FPSVisible, int);
137  vtkSetMacro(FPSVisible, int);
138 
141  vtkGetMacro(GPUMemorySize, int);
142  vtkSetMacro(GPUMemorySize, int);
143 
145  vtkSetMacro(ExpectedFPS, double);
146  vtkGetMacro(ExpectedFPS, double);
147 
148  vtkSetMacro(VolumeRenderingQuality, int);
149  vtkGetMacro(VolumeRenderingQuality, int);
150  static const char* GetVolumeRenderingQualityAsString(int id);
151  static int GetVolumeRenderingQualityFromString(const char* name);
152 
154  vtkGetMacro(RaycastTechnique, int);
155  vtkSetMacro(RaycastTechnique, int);
156  static const char* GetRaycastTechniqueAsString(int id);
157  static int GetRaycastTechniqueFromString(const char* name);
158 
162  vtkGetMacro(VolumeRenderingSurfaceSmoothing, bool);
163  vtkSetMacro(VolumeRenderingSurfaceSmoothing, bool);
164 
169  vtkSetMacro(VolumeRenderingOversamplingFactor, double);
170  vtkGetMacro(VolumeRenderingOversamplingFactor, double);
171 
173  enum
174  {
175  RotateAround = 0,
177  ViewAxisMode_Last
178  };
179 
181  enum
182  {
183  PitchUp = 0,
189  SpinDirection_Last
190  };
191 
193  enum
194  {
195  NoStereo = 0,
203  StereoType_Last
204  };
205 
207  enum
208  {
209  Perspective = 0,
211  RenderMode_Last
212  };
213 
215  enum
216  {
217  Off = 0,
220  AnimationMode_Last
221  };
222 
224  enum
225  {
226  Adaptive = 0,
229  VolumeRenderingQuality_Last
230  };
231 
233  enum
234  {
235  Composite = 0, // Composite with directional lighting (default)
236  CompositeEdgeColoring, // Composite with fake lighting (edge coloring, faster) - Not used
241  RaycastTechnique_Last
242  };
243 
245  enum
246  {
247  GraphicalResourcesCreatedEvent = 19001,
249  };
250 
256  void SetInteracting(int);
257  vtkGetMacro(Interacting, int);
258  vtkBooleanMacro(Interacting, int);
259 
267  {
268  None = 0,
280  };
281 
284  vtkGetMacro (LinkedControl, int );
285  vtkSetMacro (LinkedControl, int );
286  vtkBooleanMacro(LinkedControl, int);
287 
293  void SetInteractionFlags(unsigned int);
294  vtkGetMacro(InteractionFlags, unsigned int);
295 
296 protected:
297  vtkMRMLViewNode();
298  ~vtkMRMLViewNode();
300  void operator=(const vtkMRMLViewNode&);
301 
307  double FieldOfView;
308  double LetterSize;
309 
313  double SpinDegrees;
315 
319 
323 
326 
329 
333 
336 
339 
344 
346  double ExpectedFPS;
347 
353 
362 
365 
371 
374  unsigned int InteractionFlags;
375 
376 };
377 
378 #endif
int AnimationMode
Parameters of automatic spin.
double ExpectedFPS
Expected frame per second rendered.
void operator=(const vtkMRMLAbstractViewNode &)
virtual vtkMRMLNode * CreateNodeInstance()=0
Create instance of the default node. Like New only virtual.
good image quality at reasonable speed
bool VolumeRenderingSurfaceSmoothing
Make surface appearance smoother in volume rendering. Off by default.
int FPSVisible
Show the Frame per second as text on the lower right part of the view.
Abstract MRML node to represent a view. The class holds the properties common to any view type (3D...
double VolumeRenderingOversamplingFactor
int StereoType
Parameters for stereo viewing.
int RenderMode
Specifies orthographic or perspective rendering.
unsigned int InteractionFlags
MRML node to represent a 3D view.
int UseDepthPeeling
Use the depth peeling rendering mode.
Abstract Superclass for all specific types of MRML nodes.
Definition: vtkMRMLNode.h:138
high image quality, rendering time is not considered
void PrintSelf(ostream &os, vtkIndent indent) VTK_OVERRIDE
int RockLength
Parameters of automatic rock.