VTK
vtkFlyingEdges3D.h
Go to the documentation of this file.
1/*=========================================================================
2
3 Program: Visualization Toolkit
4 Module: vtkFlyingEdges3D.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=========================================================================*/
64#ifndef vtkFlyingEdges3D_h
65#define vtkFlyingEdges3D_h
66
67#include "vtkFiltersCoreModule.h" // For export macro
69#include "vtkContourValues.h" // Passes calls through
70
71class vtkImageData;
72
73class VTKFILTERSCORE_EXPORT vtkFlyingEdges3D : public vtkPolyDataAlgorithm
74{
75public:
78 void PrintSelf(ostream& os, vtkIndent indent) VTK_OVERRIDE;
79
83 vtkMTimeType GetMTime() VTK_OVERRIDE;
84
86
92 vtkSetMacro(ComputeNormals,int);
93 vtkGetMacro(ComputeNormals,int);
94 vtkBooleanMacro(ComputeNormals,int);
96
98
106 vtkSetMacro(ComputeGradients,int);
107 vtkGetMacro(ComputeGradients,int);
108 vtkBooleanMacro(ComputeGradients,int);
110
112
115 vtkSetMacro(ComputeScalars,int);
116 vtkGetMacro(ComputeScalars,int);
117 vtkBooleanMacro(ComputeScalars,int);
119
121
127 vtkSetMacro(InterpolateAttributes,int);
128 vtkGetMacro(InterpolateAttributes,int);
129 vtkBooleanMacro(InterpolateAttributes,int);
131
136 void SetValue(int i, double value) {this->ContourValues->SetValue(i,value);}
137
141 double GetValue(int i) {return this->ContourValues->GetValue(i);}
142
147 double *GetValues() {return this->ContourValues->GetValues();}
148
154 void GetValues(double *contourValues) {
155 this->ContourValues->GetValues(contourValues);}
156
162 void SetNumberOfContours(int number) {
163 this->ContourValues->SetNumberOfContours(number);}
164
169 return this->ContourValues->GetNumberOfContours();}
170
175 void GenerateValues(int numContours, double range[2]) {
176 this->ContourValues->GenerateValues(numContours, range);}
177
182 void GenerateValues(int numContours, double rangeStart, double rangeEnd)
183 {this->ContourValues->GenerateValues(numContours, rangeStart, rangeEnd);}
184
186
189 vtkSetMacro(ArrayComponent, int);
190 vtkGetMacro(ArrayComponent, int);
192
193protected:
195 ~vtkFlyingEdges3D() VTK_OVERRIDE;
196
197 int ComputeNormals;
198 int ComputeGradients;
199 int ComputeScalars;
200 int InterpolateAttributes;
201 int ArrayComponent;
202 vtkContourValues *ContourValues;
203
205 vtkInformationVector *) VTK_OVERRIDE;
206 int RequestUpdateExtent(vtkInformation *, vtkInformationVector **,
207 vtkInformationVector *) VTK_OVERRIDE;
208 int FillInputPortInformation(int port, vtkInformation *info) VTK_OVERRIDE;
209
210private:
211 vtkFlyingEdges3D(const vtkFlyingEdges3D&) VTK_DELETE_FUNCTION;
212 void operator=(const vtkFlyingEdges3D&) VTK_DELETE_FUNCTION;
213};
214
215#endif
helper object to manage setting and generating contour values
generate isosurface from 3D image data (volume)
double * GetValues()
Get a pointer to an array of contour values.
vtkMTimeType GetMTime() override
Because we delegate to vtkContourValues.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
double GetValue(int i)
Get the ith contour value.
void GetValues(double *contourValues)
Fill a supplied list with contour values.
int GetNumberOfContours()
Get the number of contours in the list of contour values.
void GenerateValues(int numContours, double rangeStart, double rangeEnd)
Generate numContours equally spaced contour values between specified range.
~vtkFlyingEdges3D() override
void SetNumberOfContours(int number)
Set the number of contours to place into the list.
static vtkFlyingEdges3D * New()
void GenerateValues(int numContours, double range[2])
Generate numContours equally spaced contour values between specified range.
topologically and geometrically regular array of data
Definition: vtkImageData.h:46
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.
@ info
Definition: vtkX3D.h:376
@ value
Definition: vtkX3D.h:220
@ port
Definition: vtkX3D.h:447
@ range
Definition: vtkX3D.h:238
vtkSetMacro(IgnoreDriverBugs, bool)
Updates the extensions string.
vtkBooleanMacro(IgnoreDriverBugs, bool)
Updates the extensions string.
vtkTypeUInt64 vtkMTimeType
Definition: vtkType.h:248