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
vtkMRMLClipModelsNode.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: vtkMRMLClipModelsNode.h,v $
10  Date: $Date: 2006/03/19 17:12:28 $
11  Version: $Revision: 1.6 $
12 
13 =========================================================================auto=*/
14 
15 #ifndef __vtkMRMLClipModelsNode_h
16 #define __vtkMRMLClipModelsNode_h
17 
18 #include "vtkMRMLNode.h"
19 
26 class VTK_MRML_EXPORT vtkMRMLClipModelsNode : public vtkMRMLNode
27 {
28 public:
29  static vtkMRMLClipModelsNode *New();
31  void PrintSelf(ostream& os, vtkIndent indent) VTK_OVERRIDE;
32 
33  //--------------------------------------------------------------------------
35  //--------------------------------------------------------------------------
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 
47 
50  virtual void Copy(vtkMRMLNode *node) VTK_OVERRIDE;
51 
54  virtual const char* GetNodeTagName() VTK_OVERRIDE {return "ClipModels";}
55 
59  vtkGetMacro(ClipType, int);
60  vtkSetMacro(ClipType, int);
61 
62  enum
63  {
64  ClipIntersection = 0,
65  ClipUnion = 1
66  };
67 
71  vtkGetMacro(RedSliceClipState, int);
72  vtkSetMacro(RedSliceClipState, int);
73 
77  vtkGetMacro(YellowSliceClipState, int);
78  vtkSetMacro(YellowSliceClipState, int);
79 
83  vtkGetMacro(GreenSliceClipState, int);
84  vtkSetMacro(GreenSliceClipState, int);
85 
86  enum
87  {
88  ClipOff = 0,
89  ClipPositiveSpace = 1,
90  ClipNegativeSpace = 2,
91  };
92 
96  typedef enum
97  {
98  Straight = 0,
102 
103  vtkGetMacro(ClippingMethod, ClippingMethodType);
104  vtkSetMacro(ClippingMethod, ClippingMethodType);
105 
106  //Convert between enum and string
107  static int GetClippingMethodFromString(const char* name);
108  static const char* GetClippingMethodAsString(ClippingMethodType id);
109 
110 protected:
114  void operator=(const vtkMRMLClipModelsNode&);
115 
116  int ClipType;
117 
121 
122  ClippingMethodType ClippingMethod;
123 
124 
125 };
126 
127 #endif
MRML node to represent three clipping planes.
void operator=(const vtkMRMLNode &)
ClippingMethodType ClippingMethod
virtual vtkMRMLNode * CreateNodeInstance()=0
Create instance of the default node. Like New only virtual.
void PrintSelf(ostream &os, vtkIndent indent) VTK_OVERRIDE
Abstract Superclass for all specific types of MRML nodes.
Definition: vtkMRMLNode.h:135