VMTK
vtkvmtkImageBoxPainter.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: VMTK
4  Module: $RCSfile: vtkvmtkImageBoxPainter.h,v $
5  Language: C++
6 
7  Copyright (c) Luca Antiga, David Steinman. All rights reserved.
8  See LICENSE file for details.
9 
10  Portions of this code are covered under the VTK copyright.
11  See VTKCopyright.txt or http://www.kitware.com/VTKCopyright.htm
12  for details.
13 
14  This software is distributed WITHOUT ANY WARRANTY; without even
15  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
16  PURPOSE. See the above copyright notices for more information.
17 
18 =========================================================================*/
28 #ifndef __vtkvmtkImageBoxPainter_h
29 #define __vtkvmtkImageBoxPainter_h
30 
31 #include "vtkSimpleImageToImageFilter.h"
32 #include "vtkvmtkWin32Header.h"
33 
34 class VTK_VMTK_MISC_EXPORT vtkvmtkImageBoxPainter : public vtkSimpleImageToImageFilter
35 {
36 public:
37  static vtkvmtkImageBoxPainter *New();
38  vtkTypeMacro(vtkvmtkImageBoxPainter,vtkSimpleImageToImageFilter);
39 
40  vtkGetMacro(PaintValue,double);
41  vtkSetMacro(PaintValue,double);
42 
43  vtkGetVectorMacro(BoxBounds,double,6);
44  vtkSetVectorMacro(BoxBounds,double,6);
45 
46  vtkGetVectorMacro(BoxExtent,int,6);
47  vtkSetVectorMacro(BoxExtent,int,6);
48 
49  vtkGetMacro(BoxDefinition,int);
50  vtkSetMacro(BoxDefinition,int);
52  { this->BoxDefinition = vtkvmtkImageBoxPainter::USE_EXTENT; }
54  { this->BoxDefinition = vtkvmtkImageBoxPainter::USE_BOUNDS; }
55 
56 protected:
57 
60 
61  virtual void SimpleExecute(vtkImageData* input, vtkImageData* output) VTK_OVERRIDE;
62 
63  double PaintValue;
64  double BoxBounds[6];
65  int BoxExtent[6];
66 
68  //BTX
69  enum
70  {
72  USE_EXTENT
73  };
74  //ETX
75 
76 private:
77  vtkvmtkImageBoxPainter(const vtkvmtkImageBoxPainter&); // Not implemented.
78  void operator=(const vtkvmtkImageBoxPainter&); // Not implemented.
79 };
80 
81 #endif
82 
83 
84 
85 
86 
87 
88 
Create a box shaped sub-volume within a 3D image and paint (assign a value to) every sub-volume eleme...