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 =========================================================================*/
79 #ifndef vtkDiscreteFlyingEdges3D_h
80 #define vtkDiscreteFlyingEdges3D_h
81 
82 #include "vtkContourValues.h" // Passes calls through
83 #include "vtkFiltersGeneralModule.h" // For export macro
84 #include "vtkPolyDataAlgorithm.h"
85 
86 class vtkImageData;
87 
88 class VTKFILTERSGENERAL_EXPORT vtkDiscreteFlyingEdges3D : public vtkPolyDataAlgorithm
89 {
90 public:
93  void PrintSelf(ostream& os, vtkIndent indent) override;
94 
98  vtkMTimeType GetMTime() override;
99 
101 
107  vtkSetMacro(ComputeNormals, int);
108  vtkGetMacro(ComputeNormals, int);
109  vtkBooleanMacro(ComputeNormals, int);
111 
113 
121  vtkSetMacro(ComputeGradients, int);
122  vtkGetMacro(ComputeGradients, int);
123  vtkBooleanMacro(ComputeGradients, int);
125 
127 
130  vtkSetMacro(ComputeScalars, int);
131  vtkGetMacro(ComputeScalars, int);
132  vtkBooleanMacro(ComputeScalars, int);
134 
136 
142  vtkSetMacro(InterpolateAttributes, int);
143  vtkGetMacro(InterpolateAttributes, int);
144  vtkBooleanMacro(InterpolateAttributes, int);
146 
151  void SetValue(int i, double value) { this->ContourValues->SetValue(i, value); }
152 
156  double GetValue(int i) { return this->ContourValues->GetValue(i); }
157 
162  double* GetValues() { return this->ContourValues->GetValues(); }
163 
169  void GetValues(double* contourValues) { this->ContourValues->GetValues(contourValues); }
170 
176  void SetNumberOfContours(int number) { this->ContourValues->SetNumberOfContours(number); }
177 
181  vtkIdType GetNumberOfContours() { return this->ContourValues->GetNumberOfContours(); }
182 
187  void GenerateValues(int numContours, double range[2])
188  {
189  this->ContourValues->GenerateValues(numContours, range);
190  }
191 
196  void GenerateValues(int numContours, double rangeStart, double rangeEnd)
197  {
198  this->ContourValues->GenerateValues(numContours, rangeStart, rangeEnd);
199  }
200 
202 
205  vtkSetMacro(ArrayComponent, int);
206  vtkGetMacro(ArrayComponent, int);
208 
209 protected:
212 
219 
223 
224 private:
226  void operator=(const vtkDiscreteFlyingEdges3D&) = delete;
227 };
228 
229 #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.
void SetNumberOfContours(int number)
Set the number of contours to place into the list.
double * GetValues()
Get a pointer to an array of contour values.
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.
void GetValues(double *contourValues)
Fill a supplied list with contour values.
static vtkDiscreteFlyingEdges3D * New()
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:157
a simple class to control print indentation
Definition: vtkIndent.h:113
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