VTK  9.1.0
vtkDiscreteFlyingEdges3D.h
Go to the documentation of this file.
1/*=========================================================================
2
3 Program: Visualization Toolkit
4 Module: vtkDiscreteFlyingEdges3D.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=========================================================================*/
59#ifndef vtkDiscreteFlyingEdges3D_h
60#define vtkDiscreteFlyingEdges3D_h
61
62#include "vtkContourValues.h" // Passes calls through
63#include "vtkFiltersGeneralModule.h" // For export macro
65
66class vtkImageData;
67
68class VTKFILTERSGENERAL_EXPORT vtkDiscreteFlyingEdges3D : public vtkPolyDataAlgorithm
69{
70public:
73 void PrintSelf(ostream& os, vtkIndent indent) override;
74
79
81
87 vtkSetMacro(ComputeNormals, int);
88 vtkGetMacro(ComputeNormals, int);
89 vtkBooleanMacro(ComputeNormals, int);
91
93
101 vtkSetMacro(ComputeGradients, int);
102 vtkGetMacro(ComputeGradients, int);
103 vtkBooleanMacro(ComputeGradients, int);
105
107
110 vtkSetMacro(ComputeScalars, int);
111 vtkGetMacro(ComputeScalars, int);
112 vtkBooleanMacro(ComputeScalars, int);
114
116
122 vtkSetMacro(InterpolateAttributes, int);
123 vtkGetMacro(InterpolateAttributes, int);
124 vtkBooleanMacro(InterpolateAttributes, int);
126
131 void SetValue(int i, double value) { this->ContourValues->SetValue(i, value); }
132
136 double GetValue(int i) { return this->ContourValues->GetValue(i); }
137
142 double* GetValues() { return this->ContourValues->GetValues(); }
143
149 void GetValues(double* contourValues) { this->ContourValues->GetValues(contourValues); }
150
156 void SetNumberOfContours(int number) { this->ContourValues->SetNumberOfContours(number); }
157
161 vtkIdType GetNumberOfContours() { return this->ContourValues->GetNumberOfContours(); }
162
167 void GenerateValues(int numContours, double range[2])
168 {
169 this->ContourValues->GenerateValues(numContours, range);
170 }
171
176 void GenerateValues(int numContours, double rangeStart, double rangeEnd)
177 {
178 this->ContourValues->GenerateValues(numContours, rangeStart, rangeEnd);
179 }
180
182
185 vtkSetMacro(ArrayComponent, int);
186 vtkGetMacro(ArrayComponent, int);
188
189protected:
192
199
203
204private:
206 void operator=(const vtkDiscreteFlyingEdges3D&) = delete;
207};
208
209#endif
helper object to manage setting and generating contour values
generate isosurface from 3D image data (volume)
double GetValue(int i)
Get the ith contour value.
vtkMTimeType GetMTime() override
Because we delegate to vtkContourValues.
static vtkDiscreteFlyingEdges3D * New()
void SetNumberOfContours(int number)
Set the number of contours to place into the list.
void SetValue(int i, double value)
Set a particular contour value at contour number i.
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.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
int RequestUpdateExtent(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
This is called by the superclass.
~vtkDiscreteFlyingEdges3D() override
void GenerateValues(int numContours, double range[2])
Generate numContours equally spaced contour values between specified range.
double * GetValues()
Get a pointer to an array of contour values.
void GetValues(double *contourValues)
Fill a supplied list with contour values.
int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
This is called by the superclass.
vtkIdType GetNumberOfContours()
Get the number of contours in the list of contour values.
topologically and geometrically regular array of data
Definition: vtkImageData.h:57
a simple class to control print indentation
Definition: vtkIndent.h:43
Store zero or more vtkInformation instances.
Store vtkAlgorithm input/output information.
Superclass for algorithms that produce only polydata as output.
@ info
Definition: vtkX3D.h:382
@ value
Definition: vtkX3D.h:226
@ port
Definition: vtkX3D.h:453
@ range
Definition: vtkX3D.h:244
int vtkIdType
Definition: vtkType.h:332
vtkTypeUInt32 vtkMTimeType
Definition: vtkType.h:287