VTK  9.2.6
vtkGenericContourFilter.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkGenericContourFilter.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 =========================================================================*/
46 #ifndef vtkGenericContourFilter_h
47 #define vtkGenericContourFilter_h
48 
49 #include "vtkFiltersGenericModule.h" // For export macro
50 #include "vtkPolyDataAlgorithm.h"
51 
52 class vtkContourValues;
54 class vtkPointData;
55 class vtkCellData;
56 
57 class VTKFILTERSGENERIC_EXPORT vtkGenericContourFilter : public vtkPolyDataAlgorithm
58 {
59 public:
61 
62  void PrintSelf(ostream& os, vtkIndent indent) override;
63 
68  static vtkGenericContourFilter* New();
69 
70  typedef double PointType[3]; // Arbitrary definition of a point
71 
73 
76  void SetValue(int i, float value);
77  double GetValue(int i);
78  double* GetValues();
79  void GetValues(double* contourValues);
80  void SetNumberOfContours(int number);
81  vtkIdType GetNumberOfContours();
82  void GenerateValues(int numContours, double range[2]);
83  void GenerateValues(int numContours, double rangeStart, double rangeEnd);
85 
89  vtkMTimeType GetMTime() override;
90 
92 
98  vtkSetMacro(ComputeNormals, vtkTypeBool);
99  vtkGetMacro(ComputeNormals, vtkTypeBool);
100  vtkBooleanMacro(ComputeNormals, vtkTypeBool);
102 
104 
112  vtkSetMacro(ComputeGradients, vtkTypeBool);
113  vtkGetMacro(ComputeGradients, vtkTypeBool);
114  vtkBooleanMacro(ComputeGradients, vtkTypeBool);
116 
118 
121  vtkSetMacro(ComputeScalars, vtkTypeBool);
122  vtkGetMacro(ComputeScalars, vtkTypeBool);
123  vtkBooleanMacro(ComputeScalars, vtkTypeBool);
125 
127 
131  void SetLocator(vtkIncrementalPointLocator* locator);
132  vtkGetObjectMacro(Locator, vtkIncrementalPointLocator);
134 
139  void CreateDefaultLocator();
140 
142 
147  vtkGetStringMacro(InputScalarsSelection);
148  virtual void SelectInputScalars(const char* fieldName);
150 
151 protected:
153  ~vtkGenericContourFilter() override;
154 
156 
157  int FillInputPortInformation(int, vtkInformation*) override;
158 
164 
166  vtkSetStringMacro(InputScalarsSelection);
167 
168  // Used internal by vtkGenericAdaptorCell::Contour()
172 
173 private:
175  void operator=(const vtkGenericContourFilter&) = delete;
176 };
177 #endif
helper object to manage setting and generating contour values
represent and manipulate point attribute data
Definition: vtkPointData.h:41
Store vtkAlgorithm input/output information.
vtkTypeUInt32 vtkMTimeType
Definition: vtkType.h:287
virtual int RequestData(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
This is called by the superclass.
represent and manipulate cell attribute data
Definition: vtkCellData.h:41
Abstract class in support of both point location and point insertion.
int vtkIdType
Definition: vtkType.h:332
static vtkPolyDataAlgorithm * New()
int vtkTypeBool
Definition: vtkABI.h:69
vtkIncrementalPointLocator * Locator
Superclass for algorithms that produce only polydata as output.
a simple class to control print indentation
Definition: vtkIndent.h:39
generate isocontours from input dataset
virtual vtkMTimeType GetMTime()
Return this object's modified time.
int FillInputPortInformation(int port, vtkInformation *info) override
Fill the input port information objects for this algorithm.
Store zero or more vtkInformation instances.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.