VTK  9.5.20250715
vtkWarpScalar.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
98#ifndef vtkWarpScalar_h
99#define vtkWarpScalar_h
100
101#include "vtkFiltersGeneralModule.h" // For export macro
102#include "vtkPointSetAlgorithm.h"
103
104VTK_ABI_NAMESPACE_BEGIN
105class vtkCellArray;
106class vtkDataArray;
107class vtkDataSet;
109class vtkIdTypeArray;
110class vtkPointSet;
112
113class VTKFILTERSGENERAL_EXPORT vtkWarpScalar : public vtkPointSetAlgorithm
114{
115public:
117
123 void PrintSelf(ostream& os, vtkIndent indent) override;
125
127
130 vtkSetMacro(ScaleFactor, double);
131 vtkGetMacro(ScaleFactor, double);
133
135
139 vtkSetMacro(UseNormal, vtkTypeBool);
140 vtkGetMacro(UseNormal, vtkTypeBool);
141 vtkBooleanMacro(UseNormal, vtkTypeBool);
143
145
149 vtkSetVector3Macro(Normal, double);
150 vtkGetVectorMacro(Normal, double, 3);
152
154
159 vtkSetMacro(XYPlane, vtkTypeBool);
160 vtkGetMacro(XYPlane, vtkTypeBool);
161 vtkBooleanMacro(XYPlane, vtkTypeBool);
163
165
170 vtkSetMacro(OutputPointsPrecision, int);
171 vtkGetMacro(OutputPointsPrecision, int);
173
175
183 vtkGetMacro(GenerateEnclosure, bool);
184 vtkSetMacro(GenerateEnclosure, bool);
185 vtkBooleanMacro(GenerateEnclosure, bool);
187
188 int FillInputPortInformation(int port, vtkInformation* info) override;
189
190protected:
192 ~vtkWarpScalar() override;
193
195 vtkInformationVector* outputVector) override;
197
201 unsigned int GetInputDimension(vtkDataSet* input);
205 void BuildSideWalls(vtkPointSet* output, int nInputPoints, vtkUnsignedCharArray* boundaryCells,
206 vtkIdTypeArray* boundaryFaceIndexes);
211
214 double Normal[3];
217 bool GenerateEnclosure = false;
218
219private:
220 vtkWarpScalar(const vtkWarpScalar&) = delete;
221 void operator=(const vtkWarpScalar&) = delete;
222};
223
224VTK_ABI_NAMESPACE_END
225#endif
object to represent cell connectivity
abstract superclass for arrays of numeric data
represent and manipulate attribute data in a dataset
abstract class to specify dataset behavior
Definition vtkDataSet.h:165
dynamic, self-adjusting array of vtkIdType
a simple class to control print indentation
Definition vtkIndent.h:108
Store zero or more vtkInformation instances.
Store vtkAlgorithm input/output information.
Superclass for algorithms that produce output of the same type as input.
concrete class for storing a set of points
Definition vtkPointSet.h:98
dynamic, self-adjusting array of unsigned char
deform geometry with scalar data
vtkTypeBool UseNormal
~vtkWarpScalar() override
int RequestDataObject(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector) override
This is called by the superclass.
void PrintSelf(ostream &os, vtkIndent indent) override
Standard methods for instantiation, obtaining type information, and printing.
unsigned int GetInputDimension(vtkDataSet *input)
Check the topological dimension of the data set (only used when SideWallsActive)
vtkTypeBool XYPlane
int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
This is called by the superclass.
void AppendArrays(vtkDataSetAttributes *setData)
Append the values in the arrays of the array attribute collection to themselves.
void BuildSideWalls(vtkPointSet *output, int nInputPoints, vtkUnsignedCharArray *boundaryCells, vtkIdTypeArray *boundaryFaceIndexes)
When GenerateEnclosure is active, construct the cells between the base and warped surfaces.
static vtkWarpScalar * New()
Standard methods for instantiation, obtaining type information, and printing.
int FillInputPortInformation(int port, vtkInformation *info) override
Fill the input port information objects for this algorithm.
int vtkTypeBool
Definition vtkABI.h:64