VTK
vtkRectilinearSynchronizedTemplates.h
Go to the documentation of this file.
1/*=========================================================================
2
3 Program: Visualization Toolkit
4 Module: vtkRectilinearSynchronizedTemplates.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=========================================================================*/
34#ifndef vtkRectilinearSynchronizedTemplates_h
35#define vtkRectilinearSynchronizedTemplates_h
36
37#include "vtkFiltersCoreModule.h" // For export macro
39#include "vtkContourValues.h" // Passes calls through
40
42class vtkDataArray;
43
45{
46public:
48
50 void PrintSelf(ostream& os, vtkIndent indent) VTK_OVERRIDE;
51
55 vtkMTimeType GetMTime() VTK_OVERRIDE;
56
58
64 vtkSetMacro(ComputeNormals,int);
65 vtkGetMacro(ComputeNormals,int);
66 vtkBooleanMacro(ComputeNormals,int);
68
70
78 vtkSetMacro(ComputeGradients,int);
79 vtkGetMacro(ComputeGradients,int);
80 vtkBooleanMacro(ComputeGradients,int);
82
84
87 vtkSetMacro(ComputeScalars,int);
88 vtkGetMacro(ComputeScalars,int);
89 vtkBooleanMacro(ComputeScalars,int);
91
96 void SetValue(int i, double value) {this->ContourValues->SetValue(i,value);}
97
101 double GetValue(int i) {return this->ContourValues->GetValue(i);}
102
107 double *GetValues() {return this->ContourValues->GetValues();}
108
114 void GetValues(double *contourValues) {
115 this->ContourValues->GetValues(contourValues);}
116
122 void SetNumberOfContours(int number) {
123 this->ContourValues->SetNumberOfContours(number);}
124
129 return this->ContourValues->GetNumberOfContours();}
130
135 void GenerateValues(int numContours, double range[2]) {
136 this->ContourValues->GenerateValues(numContours, range);}
137
142 void GenerateValues(int numContours, double rangeStart, double rangeEnd)
143 {this->ContourValues->GenerateValues(numContours, rangeStart, rangeEnd);}
144
146
149 vtkSetMacro(ArrayComponent, int);
150 vtkGetMacro(ArrayComponent, int);
152
154
158 vtkSetMacro(GenerateTriangles,int);
159 vtkGetMacro(GenerateTriangles,int);
160 vtkBooleanMacro(GenerateTriangles,int);
162
167 void ComputeSpacing(vtkRectilinearGrid *data, int i, int j, int k,
168 int extent[6], double spacing[6]);
169
170protected:
173
174 int ComputeNormals;
175 int ComputeGradients;
176 int ComputeScalars;
177 int GenerateTriangles;
178
179 vtkContourValues *ContourValues;
180
181 int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *) VTK_OVERRIDE;
182 int RequestUpdateExtent(vtkInformation *, vtkInformationVector **, vtkInformationVector *) VTK_OVERRIDE;
183 int FillInputPortInformation(int port, vtkInformation *info) VTK_OVERRIDE;
184
185 int ArrayComponent;
186
187 void* GetScalarsForExtent(vtkDataArray *array, int extent[6],
188 vtkRectilinearGrid *input);
189
190private:
192 void operator=(const vtkRectilinearSynchronizedTemplates&) VTK_DELETE_FUNCTION;
193};
194
195// template table.
196
199
200#endif
helper object to manage setting and generating contour values
abstract superclass for arrays of numeric data
Definition: vtkDataArray.h:55
a simple class to control print indentation
Definition: vtkIndent.h:40
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.
void GenerateValues(int numContours, double rangeStart, double rangeEnd)
Generate numContours equally spaced contour values between specified range.
double * GetValues()
Get a pointer to an array of contour values.
double GetValue(int i)
Get the ith contour value.
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.
static vtkRectilinearSynchronizedTemplates * New()
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.
int GetNumberOfContours()
Get the number of contours in the list 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
vtkSetMacro(IgnoreDriverBugs, bool)
Updates the extensions string.
vtkBooleanMacro(IgnoreDriverBugs, bool)
Updates the extensions string.
int VTK_RECTILINEAR_SYNCHONIZED_TEMPLATES_TABLE_1[]
int VTK_RECTILINEAR_SYNCHONIZED_TEMPLATES_TABLE_2[]
vtkTypeUInt64 vtkMTimeType
Definition: vtkType.h:248