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)
vtkMTimeType GetMTime() override
Because we delegate to vtkContourValues.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
double GetValue(int i)
Get the ith contour value.
void GetValues(double *contourValues)
Fill a supplied list with contour values.
int 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.
~vtkFlyingEdges3D() override
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 GenerateValues(int numContours, double range[2])
Generate numContours equally spaced contour values between specified range.
static vtkFlyingEdges3D * New()
topologically and geometrically regular array of data
Definition: vtkImageData.h:46
a simple class to control print indentation
Definition: vtkIndent.h:40
Store zero or more vtkInformation instances.
Store vtkAlgorithm input/output information.
Superclass for algorithms that produce only polydata as output.
@ info
Definition: vtkX3D.h:376
@ value
Definition: vtkX3D.h:220
@ port
Definition: vtkX3D.h:447
@ range
Definition: vtkX3D.h:238
vtkSetMacro(IgnoreDriverBugs, bool)
Updates the extensions string.
vtkBooleanMacro(IgnoreDriverBugs, bool)
Updates the extensions string.
vtkTypeUInt64 vtkMTimeType
Definition: vtkType.h:248