VTK  9.3.20240419
vtkRectilinearSynchronizedTemplates.h
Go to the documentation of this file.
1 // SPDX-FileCopyrightText: Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
2 // SPDX-License-Identifier: BSD-3-Clause
22 #ifndef vtkRectilinearSynchronizedTemplates_h
23 #define vtkRectilinearSynchronizedTemplates_h
24 
25 #include "vtkContourValues.h" // Passes calls through
26 #include "vtkFiltersCoreModule.h" // For export macro
27 #include "vtkPolyDataAlgorithm.h"
28 
29 VTK_ABI_NAMESPACE_BEGIN
30 class vtkRectilinearGrid;
31 class vtkDataArray;
32 
33 class VTKFILTERSCORE_EXPORT vtkRectilinearSynchronizedTemplates : public vtkPolyDataAlgorithm
34 {
35 public:
37 
39  void PrintSelf(ostream& os, vtkIndent indent) override;
40 
44  vtkMTimeType GetMTime() override;
45 
47 
53  vtkSetMacro(ComputeNormals, vtkTypeBool);
54  vtkGetMacro(ComputeNormals, vtkTypeBool);
55  vtkBooleanMacro(ComputeNormals, vtkTypeBool);
57 
59 
67  vtkSetMacro(ComputeGradients, vtkTypeBool);
68  vtkGetMacro(ComputeGradients, vtkTypeBool);
69  vtkBooleanMacro(ComputeGradients, vtkTypeBool);
71 
73 
76  vtkSetMacro(ComputeScalars, vtkTypeBool);
77  vtkGetMacro(ComputeScalars, vtkTypeBool);
78  vtkBooleanMacro(ComputeScalars, vtkTypeBool);
80 
85  void SetValue(int i, double value) { this->ContourValues->SetValue(i, value); }
86 
90  double GetValue(int i) { return this->ContourValues->GetValue(i); }
91 
96  double* GetValues() { return this->ContourValues->GetValues(); }
97 
103  void GetValues(double* contourValues) { this->ContourValues->GetValues(contourValues); }
104 
110  void SetNumberOfContours(int number) { this->ContourValues->SetNumberOfContours(number); }
111 
115  vtkIdType GetNumberOfContours() { return this->ContourValues->GetNumberOfContours(); }
116 
121  void GenerateValues(int numContours, double range[2])
122  {
123  this->ContourValues->GenerateValues(numContours, range);
124  }
125 
130  void GenerateValues(int numContours, double rangeStart, double rangeEnd)
131  {
132  this->ContourValues->GenerateValues(numContours, rangeStart, rangeEnd);
133  }
134 
136 
139  vtkSetMacro(ArrayComponent, int);
140  vtkGetMacro(ArrayComponent, int);
142 
144 
148  vtkSetMacro(GenerateTriangles, vtkTypeBool);
149  vtkGetMacro(GenerateTriangles, vtkTypeBool);
150  vtkBooleanMacro(GenerateTriangles, vtkTypeBool);
152 
158  vtkRectilinearGrid* data, int i, int j, int k, int extent[6], double spacing[6]);
159 
160 protected:
163 
168 
170 
174 
176 
178 
179 private:
181  void operator=(const vtkRectilinearSynchronizedTemplates&) = delete;
182 };
183 
184 // template table.
185 
188 
189 VTK_ABI_NAMESPACE_END
190 #endif
helper object to manage setting and generating contour values
abstract superclass for arrays of numeric data
Definition: vtkDataArray.h:155
a simple class to control print indentation
Definition: vtkIndent.h:108
Store zero or more vtkInformation instances.
Store vtkAlgorithm input/output information.
Superclass for algorithms that produce only polydata as output.
a dataset that is topologically regular with variable spacing in the three coordinate directions
generate isosurface from rectilinear grid
vtkMTimeType GetMTime() override
Because we delegate to vtkContourValues.
int RequestUpdateExtent(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
This is called by the superclass.
int FillInputPortInformation(int port, vtkInformation *info) override
Fill the input port information objects for this algorithm.
void GenerateValues(int numContours, double rangeStart, double rangeEnd)
Generate numContours equally spaced contour values between specified range.
double GetValue(int i)
Get the ith contour value.
vtkIdType GetNumberOfContours()
Get the number of contours in the list of contour values.
int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
This is called by the superclass.
void * GetScalarsForExtent(vtkDataArray *array, int extent[6], vtkRectilinearGrid *input)
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
void GetValues(double *contourValues)
Fill a supplied list with contour values.
void SetValue(int i, double value)
Set a particular contour value at contour number i.
void SetNumberOfContours(int number)
Set the number of contours to place into the list.
void GenerateValues(int numContours, double range[2])
Generate numContours equally spaced contour values between specified range.
void ComputeSpacing(vtkRectilinearGrid *data, int i, int j, int k, int extent[6], double spacing[6])
Compute the spacing between this point and its 6 neighbors.
static vtkRectilinearSynchronizedTemplates * New()
double * GetValues()
Get a pointer to an array of contour values.
@ info
Definition: vtkX3D.h:376
@ value
Definition: vtkX3D.h:220
@ port
Definition: vtkX3D.h:447
@ range
Definition: vtkX3D.h:238
@ extent
Definition: vtkX3D.h:345
@ spacing
Definition: vtkX3D.h:481
@ data
Definition: vtkX3D.h:315
int vtkTypeBool
Definition: vtkABI.h:64
int VTK_RECTILINEAR_SYNCHONIZED_TEMPLATES_TABLE_1[]
int VTK_RECTILINEAR_SYNCHONIZED_TEMPLATES_TABLE_2[]
int vtkIdType
Definition: vtkType.h:315
vtkTypeUInt32 vtkMTimeType
Definition: vtkType.h:270