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 =========================================================================*/
68 #ifndef vtkFlyingEdges3D_h
69 #define vtkFlyingEdges3D_h
70 
71 #include "vtkFiltersCoreModule.h" // For export macro
72 #include "vtkPolyDataAlgorithm.h"
73 #include "vtkContourValues.h" // Passes calls through
74 
75 class vtkImageData;
76 
77 class VTKFILTERSCORE_EXPORT vtkFlyingEdges3D : public vtkPolyDataAlgorithm
78 {
79 public:
80  static vtkFlyingEdges3D *New();
82  void PrintSelf(ostream& os, vtkIndent indent) override;
83 
87  vtkMTimeType GetMTime() override;
88 
90 
96  vtkSetMacro(ComputeNormals,vtkTypeBool);
97  vtkGetMacro(ComputeNormals,vtkTypeBool);
98  vtkBooleanMacro(ComputeNormals,vtkTypeBool);
100 
102 
110  vtkSetMacro(ComputeGradients,vtkTypeBool);
111  vtkGetMacro(ComputeGradients,vtkTypeBool);
112  vtkBooleanMacro(ComputeGradients,vtkTypeBool);
114 
116 
119  vtkSetMacro(ComputeScalars,vtkTypeBool);
120  vtkGetMacro(ComputeScalars,vtkTypeBool);
121  vtkBooleanMacro(ComputeScalars,vtkTypeBool);
123 
125 
131  vtkSetMacro(InterpolateAttributes,vtkTypeBool);
132  vtkGetMacro(InterpolateAttributes,vtkTypeBool);
133  vtkBooleanMacro(InterpolateAttributes,vtkTypeBool);
135 
140  void SetValue(int i, double value) {this->ContourValues->SetValue(i,value);}
141 
145  double GetValue(int i) {return this->ContourValues->GetValue(i);}
146 
151  double *GetValues() {return this->ContourValues->GetValues();}
152 
158  void GetValues(double *contourValues) {
159  this->ContourValues->GetValues(contourValues);}
160 
166  void SetNumberOfContours(int number) {
167  this->ContourValues->SetNumberOfContours(number);}
168 
173  return this->ContourValues->GetNumberOfContours();}
174 
179  void GenerateValues(int numContours, double range[2]) {
180  this->ContourValues->GenerateValues(numContours, range);}
181 
186  void GenerateValues(int numContours, double rangeStart, double rangeEnd)
187  {this->ContourValues->GenerateValues(numContours, rangeStart, rangeEnd);}
188 
190 
193  vtkSetMacro(ArrayComponent, int);
194  vtkGetMacro(ArrayComponent, int);
196 
197 protected:
199  ~vtkFlyingEdges3D() override;
200 
207 
209  vtkInformationVector *) override;
211  vtkInformationVector *) override;
212  int FillInputPortInformation(int port, vtkInformation *info) override;
213 
214 private:
215  vtkFlyingEdges3D(const vtkFlyingEdges3D&) = delete;
216  void operator=(const vtkFlyingEdges3D&) = delete;
217 };
218 
219 #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:302
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:39
vtkTypeBool ComputeNormals
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.
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.