VTK  9.0.1
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 =========================================================================*/
65 #ifndef vtkFlyingEdges3D_h
66 #define vtkFlyingEdges3D_h
67 
68 #include "vtkContourValues.h" // Passes calls through
69 #include "vtkFiltersCoreModule.h" // For export macro
70 #include "vtkPolyDataAlgorithm.h"
71 
72 class vtkImageData;
73 
74 class VTKFILTERSCORE_EXPORT vtkFlyingEdges3D : public vtkPolyDataAlgorithm
75 {
76 public:
77  static vtkFlyingEdges3D* New();
79  void PrintSelf(ostream& os, vtkIndent indent) override;
80 
84  vtkMTimeType GetMTime() override;
85 
87 
93  vtkSetMacro(ComputeNormals, vtkTypeBool);
94  vtkGetMacro(ComputeNormals, vtkTypeBool);
95  vtkBooleanMacro(ComputeNormals, vtkTypeBool);
97 
99 
107  vtkSetMacro(ComputeGradients, vtkTypeBool);
108  vtkGetMacro(ComputeGradients, vtkTypeBool);
109  vtkBooleanMacro(ComputeGradients, vtkTypeBool);
111 
113 
116  vtkSetMacro(ComputeScalars, vtkTypeBool);
117  vtkGetMacro(ComputeScalars, vtkTypeBool);
118  vtkBooleanMacro(ComputeScalars, vtkTypeBool);
120 
122 
128  vtkSetMacro(InterpolateAttributes, vtkTypeBool);
129  vtkGetMacro(InterpolateAttributes, vtkTypeBool);
130  vtkBooleanMacro(InterpolateAttributes, vtkTypeBool);
132 
137  void SetValue(int i, double value) { this->ContourValues->SetValue(i, value); }
138 
142  double GetValue(int i) { return this->ContourValues->GetValue(i); }
143 
148  double* GetValues() { return this->ContourValues->GetValues(); }
149 
155  void GetValues(double* contourValues) { this->ContourValues->GetValues(contourValues); }
156 
162  void SetNumberOfContours(int number) { this->ContourValues->SetNumberOfContours(number); }
163 
167  vtkIdType GetNumberOfContours() { return this->ContourValues->GetNumberOfContours(); }
168 
173  void GenerateValues(int numContours, double range[2])
174  {
175  this->ContourValues->GenerateValues(numContours, range);
176  }
177 
182  void GenerateValues(int numContours, double rangeStart, double rangeEnd)
183  {
184  this->ContourValues->GenerateValues(numContours, rangeStart, rangeEnd);
185  }
186 
188 
191  vtkSetMacro(ArrayComponent, int);
192  vtkGetMacro(ArrayComponent, int);
194 
195 protected:
197  ~vtkFlyingEdges3D() override;
198 
205 
208  int FillInputPortInformation(int port, vtkInformation* info) override;
209 
210 private:
211  vtkFlyingEdges3D(const vtkFlyingEdges3D&) = delete;
212  void operator=(const vtkFlyingEdges3D&) = delete;
213 };
214 
215 #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:293
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:338
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:69
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:33
vtkTypeBool ComputeNormals
topologically and geometrically regular array of data
Definition: vtkImageData.h:41
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.