VTK  9.0.3
vtkImageGridSource.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkImageGridSource.h
5 
6  Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7  All rights reserved.
8  See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9 
10  This software is distributed WITHOUT ANY WARRANTY; without even
11  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12  PURPOSE. See the above copyright notice for more information.
13 
14 =========================================================================*/
23 #ifndef vtkImageGridSource_h
24 #define vtkImageGridSource_h
25 
26 #include "vtkImageAlgorithm.h"
27 #include "vtkImagingSourcesModule.h" // For export macro
28 
29 class VTKIMAGINGSOURCES_EXPORT vtkImageGridSource : public vtkImageAlgorithm
30 {
31 public:
34  void PrintSelf(ostream& os, vtkIndent indent) override;
35 
37 
41  vtkSetVector3Macro(GridSpacing, int);
42  vtkGetVector3Macro(GridSpacing, int);
44 
46 
49  vtkSetVector3Macro(GridOrigin, int);
50  vtkGetVector3Macro(GridOrigin, int);
52 
54 
57  vtkSetMacro(LineValue, double);
58  vtkGetMacro(LineValue, double);
60 
62 
65  vtkSetMacro(FillValue, double);
66  vtkGetMacro(FillValue, double);
68 
70 
74  vtkSetMacro(DataScalarType, int);
75  void SetDataScalarTypeToDouble() { this->SetDataScalarType(VTK_DOUBLE); }
76  void SetDataScalarTypeToInt() { this->SetDataScalarType(VTK_INT); }
77  void SetDataScalarTypeToShort() { this->SetDataScalarType(VTK_SHORT); }
78  void SetDataScalarTypeToUnsignedShort() { this->SetDataScalarType(VTK_UNSIGNED_SHORT); }
79  void SetDataScalarTypeToUnsignedChar() { this->SetDataScalarType(VTK_UNSIGNED_CHAR); }
80  vtkGetMacro(DataScalarType, int);
82  {
83  return vtkImageScalarTypeNameMacro(this->DataScalarType);
84  }
86 
88 
92  vtkSetVector6Macro(DataExtent, int);
93  vtkGetVector6Macro(DataExtent, int);
95 
97 
100  vtkSetVector3Macro(DataSpacing, double);
101  vtkGetVector3Macro(DataSpacing, double);
103 
105 
108  vtkSetVector3Macro(DataOrigin, double);
109  vtkGetVector3Macro(DataOrigin, double);
111 
112 protected:
114  ~vtkImageGridSource() override {}
115 
116  int GridSpacing[3];
117  int GridOrigin[3];
118 
119  double LineValue;
120  double FillValue;
121 
123 
124  int DataExtent[6];
125  double DataSpacing[3];
126  double DataOrigin[3];
127 
130 
131 private:
132  vtkImageGridSource(const vtkImageGridSource&) = delete;
133  void operator=(const vtkImageGridSource&) = delete;
134 };
135 
136 #endif
general representation of visualization data
Definition: vtkDataObject.h:60
Generic algorithm superclass for image algs.
Create an image of a grid.
int RequestInformation(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
Subclasses can reimplement this method to collect information from their inputs and set information f...
static vtkImageGridSource * New()
void SetDataScalarTypeToUnsignedChar()
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
const char * GetDataScalarTypeAsString()
void SetDataScalarTypeToUnsignedShort()
~vtkImageGridSource() override
void ExecuteDataWithInformation(vtkDataObject *data, vtkInformation *outInfo) override
This is a convenience method that is implemented in many subclasses instead of RequestData.
a simple class to control print indentation
Definition: vtkIndent.h:34
Store zero or more vtkInformation instances.
Store vtkAlgorithm input/output information.
@ data
Definition: vtkX3D.h:321
#define VTK_SHORT
Definition: vtkType.h:46
#define VTK_DOUBLE
Definition: vtkType.h:53
#define VTK_UNSIGNED_CHAR
Definition: vtkType.h:45
#define VTK_UNSIGNED_SHORT
Definition: vtkType.h:47
#define VTK_INT
Definition: vtkType.h:48