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 =========================================================================*/
65 #ifndef vtkFlyingEdges3D_h
66 #define vtkFlyingEdges3D_h
67 
68 #include "vtkFiltersCoreModule.h" // For export macro
69 #include "vtkPolyDataAlgorithm.h"
70 #include "vtkContourValues.h" // Passes calls through
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) {
156  this->ContourValues->GetValues(contourValues);}
157 
163  void SetNumberOfContours(int number) {
164  this->ContourValues->SetNumberOfContours(number);}
165 
170  return this->ContourValues->GetNumberOfContours();}
171 
176  void GenerateValues(int numContours, double range[2]) {
177  this->ContourValues->GenerateValues(numContours, range);}
178 
183  void GenerateValues(int numContours, double rangeStart, double rangeEnd)
184  {this->ContourValues->GenerateValues(numContours, rangeStart, rangeEnd);}
185 
187 
190  vtkSetMacro(ArrayComponent, int);
191  vtkGetMacro(ArrayComponent, int);
193 
194 protected:
196  ~vtkFlyingEdges3D() override;
197 
204 
206  vtkInformationVector *) override;
208  vtkInformationVector *) override;
209  int FillInputPortInformation(int port, vtkInformation *info) override;
210 
211 private:
212  vtkFlyingEdges3D(const vtkFlyingEdges3D&) = delete;
213  void operator=(const vtkFlyingEdges3D&) = delete;
214 };
215 
216 #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:300
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 GetNumberOfContours()
Get the number of contours in the list of contour values.
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:39
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.
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.