VTK  9.3.0
vtkFlyingEdges2D.h
Go to the documentation of this file.
1 // SPDX-FileCopyrightText: Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
2 // SPDX-License-Identifier: BSD-3-Clause
63 #ifndef vtkFlyingEdges2D_h
64 #define vtkFlyingEdges2D_h
65 
66 #include "vtkContourValues.h" // Needed for direct access to ContourValues
67 #include "vtkFiltersCoreModule.h" // For export macro
68 #include "vtkPolyDataAlgorithm.h"
69 
70 VTK_ABI_NAMESPACE_BEGIN
71 class vtkImageData;
72 
73 class VTKFILTERSCORE_EXPORT vtkFlyingEdges2D : public vtkPolyDataAlgorithm
74 {
75 public:
76  static vtkFlyingEdges2D* New();
78  void PrintSelf(ostream& os, vtkIndent indent) override;
79 
83  vtkMTimeType GetMTime() override;
84 
89  void SetValue(int i, double value) { this->ContourValues->SetValue(i, value); }
90 
94  double GetValue(int i) { return this->ContourValues->GetValue(i); }
95 
100  double* GetValues() { return this->ContourValues->GetValues(); }
101 
107  void GetValues(double* contourValues) { this->ContourValues->GetValues(contourValues); }
108 
114  void SetNumberOfContours(int number) { this->ContourValues->SetNumberOfContours(number); }
115 
119  vtkIdType GetNumberOfContours() { return this->ContourValues->GetNumberOfContours(); }
120 
125  void GenerateValues(int numContours, double range[2])
126  {
127  this->ContourValues->GenerateValues(numContours, range);
128  }
129 
134  void GenerateValues(int numContours, double rangeStart, double rangeEnd)
135  {
136  this->ContourValues->GenerateValues(numContours, rangeStart, rangeEnd);
137  }
138 
140 
144  vtkSetMacro(ComputeScalars, vtkTypeBool);
145  vtkGetMacro(ComputeScalars, vtkTypeBool);
146  vtkBooleanMacro(ComputeScalars, vtkTypeBool);
148 
150 
153  vtkSetMacro(ArrayComponent, int);
154  vtkGetMacro(ArrayComponent, int);
156 
157 protected:
159  ~vtkFlyingEdges2D() override;
160 
164 
167 
168 private:
169  vtkFlyingEdges2D(const vtkFlyingEdges2D&) = delete;
170  void operator=(const vtkFlyingEdges2D&) = delete;
171 };
172 
173 VTK_ABI_NAMESPACE_END
174 #endif
helper object to manage setting and generating contour values
generate isoline(s) from a structured points (image) dataset
double GetValue(int i)
Get the ith contour value.
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.
int FillInputPortInformation(int port, vtkInformation *info) override
Fill the input port information objects for this algorithm.
void SetNumberOfContours(int number)
Set the number of contours to place into the list.
void SetValue(int i, double value)
Set a particular contour value at contour number i.
void GenerateValues(int numContours, double range[2])
Generate numContours equally spaced contour values between specified range.
vtkMTimeType GetMTime() override
Because we delegate to vtkContourValues.
vtkTypeBool ComputeScalars
double * GetValues()
Get a pointer to an array of contour values.
~vtkFlyingEdges2D() override
void GetValues(double *contourValues)
Fill a supplied list with contour values.
vtkContourValues * ContourValues
static vtkFlyingEdges2D * New()
int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
This is called by the superclass.
topologically and geometrically regular array of data
Definition: vtkImageData.h:52
a simple class to control print indentation
Definition: vtkIndent.h:38
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
int vtkTypeBool
Definition: vtkABI.h:64
int vtkIdType
Definition: vtkType.h:315
vtkTypeUInt32 vtkMTimeType
Definition: vtkType.h:270