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 =========================================================================*/
64 #ifndef vtkFlyingEdges3D_h
65 #define vtkFlyingEdges3D_h
66 
67 #include "vtkFiltersCoreModule.h" // For export macro
68 #include "vtkPolyDataAlgorithm.h"
69 #include "vtkContourValues.h" // Passes calls through
70 
71 class vtkImageData;
72 
73 class VTKFILTERSCORE_EXPORT vtkFlyingEdges3D : public vtkPolyDataAlgorithm
74 {
75 public:
76  static vtkFlyingEdges3D *New();
78  void PrintSelf(ostream& os, vtkIndent indent) VTK_OVERRIDE;
79 
83  vtkMTimeType GetMTime() VTK_OVERRIDE;
84 
86 
92  vtkSetMacro(ComputeNormals,int);
93  vtkGetMacro(ComputeNormals,int);
94  vtkBooleanMacro(ComputeNormals,int);
96 
98 
106  vtkSetMacro(ComputeGradients,int);
107  vtkGetMacro(ComputeGradients,int);
108  vtkBooleanMacro(ComputeGradients,int);
110 
112 
115  vtkSetMacro(ComputeScalars,int);
116  vtkGetMacro(ComputeScalars,int);
117  vtkBooleanMacro(ComputeScalars,int);
119 
121 
127  vtkSetMacro(InterpolateAttributes,int);
128  vtkGetMacro(InterpolateAttributes,int);
129  vtkBooleanMacro(InterpolateAttributes,int);
131 
136  void SetValue(int i, double value) {this->ContourValues->SetValue(i,value);}
137 
141  double GetValue(int i) {return this->ContourValues->GetValue(i);}
142 
147  double *GetValues() {return this->ContourValues->GetValues();}
148 
154  void GetValues(double *contourValues) {
155  this->ContourValues->GetValues(contourValues);}
156 
162  void SetNumberOfContours(int number) {
163  this->ContourValues->SetNumberOfContours(number);}
164 
169  return this->ContourValues->GetNumberOfContours();}
170 
175  void GenerateValues(int numContours, double range[2]) {
176  this->ContourValues->GenerateValues(numContours, range);}
177 
182  void GenerateValues(int numContours, double rangeStart, double rangeEnd)
183  {this->ContourValues->GenerateValues(numContours, rangeStart, rangeEnd);}
184 
186 
189  vtkSetMacro(ArrayComponent, int);
190  vtkGetMacro(ArrayComponent, int);
192 
193 protected:
195  ~vtkFlyingEdges3D() VTK_OVERRIDE;
196 
197  int ComputeNormals;
198  int ComputeGradients;
199  int ComputeScalars;
200  int InterpolateAttributes;
201  int ArrayComponent;
202  vtkContourValues *ContourValues;
203 
204  int RequestData(vtkInformation *, vtkInformationVector **,
205  vtkInformationVector *) VTK_OVERRIDE;
206  int RequestUpdateExtent(vtkInformation *, vtkInformationVector **,
207  vtkInformationVector *) VTK_OVERRIDE;
208  int FillInputPortInformation(int port, vtkInformation *info) VTK_OVERRIDE;
209 
210 private:
211  vtkFlyingEdges3D(const vtkFlyingEdges3D&) VTK_DELETE_FUNCTION;
212  void operator=(const vtkFlyingEdges3D&) VTK_DELETE_FUNCTION;
213 };
214 
215 #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.
Store vtkAlgorithm input/output information.
void GenerateValues(int numContours, double range[2])
Generate numContours equally spaced contour values between specified range.
int GetNumberOfContours()
Get the number of contours in the list of contour values.
vtkTypeUInt64 vtkMTimeType
Definition: vtkType.h:248
static vtkPolyDataAlgorithm * New()
Superclass for algorithms that produce only polydata as output.
a simple class to control print indentation
Definition: vtkIndent.h:39
topologically and geometrically regular array of data
Definition: vtkImageData.h:45
virtual vtkMTimeType GetMTime()
Return this object's modified time.
void SetNumberOfContours(int number)
Set the number of contours to place into the list.
vtkSetMacro(IgnoreDriverBugs, bool)
When set known driver bugs are ignored during driver feature detection.
void GetValues(double *contourValues)
Fill a supplied list with contour values.
double * GetValues()
Get a pointer to an array of contour values.
Store zero or more vtkInformation instances.
vtkBooleanMacro(IgnoreDriverBugs, bool)
When set known driver bugs are ignored during driver feature detection.
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.