VTK  9.3.1
vtkFlyingEdges3D.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
60 #ifndef vtkFlyingEdges3D_h
61 #define vtkFlyingEdges3D_h
62 
63 #include "vtkContourValues.h" // Passes calls through
64 #include "vtkFiltersCoreModule.h" // For export macro
65 #include "vtkPolyDataAlgorithm.h"
66 
67 VTK_ABI_NAMESPACE_BEGIN
68 class vtkImageData;
69 
70 class VTKFILTERSCORE_EXPORT vtkFlyingEdges3D : public vtkPolyDataAlgorithm
71 {
72 public:
74 
78  static vtkFlyingEdges3D* New();
80  void PrintSelf(ostream& os, vtkIndent indent) override;
82 
86  vtkMTimeType GetMTime() override;
87 
89 
95  vtkSetMacro(ComputeNormals, vtkTypeBool);
96  vtkGetMacro(ComputeNormals, vtkTypeBool);
97  vtkBooleanMacro(ComputeNormals, vtkTypeBool);
99 
101 
109  vtkSetMacro(ComputeGradients, vtkTypeBool);
110  vtkGetMacro(ComputeGradients, vtkTypeBool);
111  vtkBooleanMacro(ComputeGradients, vtkTypeBool);
113 
115 
118  vtkSetMacro(ComputeScalars, vtkTypeBool);
119  vtkGetMacro(ComputeScalars, vtkTypeBool);
120  vtkBooleanMacro(ComputeScalars, vtkTypeBool);
122 
124 
130  vtkSetMacro(InterpolateAttributes, vtkTypeBool);
131  vtkGetMacro(InterpolateAttributes, vtkTypeBool);
132  vtkBooleanMacro(InterpolateAttributes, vtkTypeBool);
134 
139  void SetValue(int i, double value) { this->ContourValues->SetValue(i, value); }
140 
144  double GetValue(int i) { return this->ContourValues->GetValue(i); }
145 
150  double* GetValues() { return this->ContourValues->GetValues(); }
151 
157  void GetValues(double* contourValues) { this->ContourValues->GetValues(contourValues); }
158 
164  void SetNumberOfContours(int number) { this->ContourValues->SetNumberOfContours(number); }
165 
169  vtkIdType GetNumberOfContours() { return this->ContourValues->GetNumberOfContours(); }
170 
175  void GenerateValues(int numContours, double range[2])
176  {
177  this->ContourValues->GenerateValues(numContours, range);
178  }
179 
184  void GenerateValues(int numContours, double rangeStart, double rangeEnd)
185  {
186  this->ContourValues->GenerateValues(numContours, rangeStart, rangeEnd);
187  }
188 
190 
193  vtkSetMacro(ArrayComponent, int);
194  vtkGetMacro(ArrayComponent, int);
196 
197 protected:
199  ~vtkFlyingEdges3D() override;
200 
207 
210  int FillInputPortInformation(int port, vtkInformation* info) override;
211 
212 private:
213  vtkFlyingEdges3D(const vtkFlyingEdges3D&) = delete;
214  void operator=(const vtkFlyingEdges3D&) = delete;
215 };
216 
217 VTK_ABI_NAMESPACE_END
218 #endif
vtkTypeBool ComputeGradients
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.
Store vtkAlgorithm input/output information.
vtkTypeUInt32 vtkMTimeType
Definition: vtkType.h:270
virtual int RequestData(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
This is called by the superclass.
void GenerateValues(int numContours, double range[2])
Generate numContours equally spaced contour values between specified range.
vtkTypeBool InterpolateAttributes
int vtkIdType
Definition: vtkType.h:315
void SetValue(int i, double value)
Set a particular contour value at contour number i.
vtkContourValues * ContourValues
static vtkPolyDataAlgorithm * New()
int vtkTypeBool
Definition: vtkABI.h:64
virtual int RequestUpdateExtent(vtkInformation *, vtkInformationVector **, vtkInformationVector *)
This is called by the superclass.
Superclass for algorithms that produce only polydata as output.
a simple class to control print indentation
Definition: vtkIndent.h:28
vtkTypeBool ComputeNormals
topologically and geometrically regular array of data
Definition: vtkImageData.h:42
virtual vtkMTimeType GetMTime()
Return this object's modified time.
void SetNumberOfContours(int number)
Set the number of contours to place into the list.
vtkTypeBool ComputeScalars
void GetValues(double *contourValues)
Fill a supplied list with contour values.
double * GetValues()
Get a pointer to an array of contour values.
int FillInputPortInformation(int port, vtkInformation *info) override
Fill the input port information objects for this algorithm.
Store zero or more vtkInformation instances.
vtkIdType 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.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.