Slicer  5.1
Slicer is a multi-platform, free and open source software package for visualization and medical image computing
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