Slicer  5.0
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
vtkImageRectangularSource.h
Go to the documentation of this file.
1 
7 #ifndef __vtkImageRectangularSource_h
8 #define __vtkImageRectangularSource_h
9 
10 #include "vtkImageAlgorithm.h"
11 #include "vtkSlicerBaseLogic.h"
12 #include <vtkVersion.h>
13 
14 class VTK_SLICER_BASE_LOGIC_EXPORT vtkImageRectangularSource : public vtkImageAlgorithm
15 {
16 public:
17  static vtkImageRectangularSource *New();
18  vtkTypeMacro(vtkImageRectangularSource,vtkImageAlgorithm);
19  void PrintSelf(ostream& os, vtkIndent indent) override;
20 
23  void SetWholeExtent(int extent[6]);
24  void SetWholeExtent(int minX, int maxX, int minY, int maxY,
25  int minZ, int maxZ);
26  void GetWholeExtent(int extent[6]);
27  int *GetWholeExtent() {return this->WholeExtent;}
28 
31  vtkSetVector3Macro(Center, int);
32  vtkGetVector3Macro(Center, int);
33 
36  vtkSetVector3Macro(Size, int);
37  vtkGetVector3Macro(Size, int);
38 
41  vtkSetMacro(InValue,float);
42  vtkGetMacro(InValue,float);
43 
46  vtkSetMacro(OutValue,float);
47  vtkGetMacro(OutValue,float);
48 
51  vtkSetMacro(InsideGraySlopeFlag,int);
52  vtkGetMacro(InsideGraySlopeFlag,int);
53 
56  vtkSetMacro(OutputScalarType,int);
57  vtkGetMacro(OutputScalarType,int);
59  {this->SetOutputScalarType(VTK_DOUBLE);}
61  {this->SetOutputScalarType(VTK_FLOAT);}
63  {this->SetOutputScalarType(VTK_LONG);}
65  {this->SetOutputScalarType(VTK_UNSIGNED_LONG);};
67  {this->SetOutputScalarType(VTK_INT);}
69  {this->SetOutputScalarType(VTK_UNSIGNED_INT);}
71  {this->SetOutputScalarType(VTK_SHORT);}
73  {this->SetOutputScalarType(VTK_UNSIGNED_SHORT);}
75  {this->SetOutputScalarType(VTK_CHAR);}
77  {this->SetOutputScalarType(VTK_UNSIGNED_CHAR);}
78 
80  void SetCorners(int x1, int y1, int x2, int y2, int x3, int y3, int x4, int y4);
81 
82 protected:
84  ~vtkImageRectangularSource() override;
85 
86  int **Corners;
87 
88  int WholeExtent[6];
89  int Center[3];
90  int Size[3];
91  float InValue;
92  float OutValue;
95 
96  int RequestInformation(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override;
97  void ExecuteDataWithInformation(vtkDataObject *output, vtkInformation* outInfo) override;
98 private:
100  void operator=(const vtkImageRectangularSource&) = delete;
101 };
102 
103 
104 #endif
105 
106