VTK  9.3.0
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
38#ifndef vtkWarpScalar_h
39#define vtkWarpScalar_h
40
41#include "vtkFiltersGeneralModule.h" // For export macro
43
44VTK_ABI_NAMESPACE_BEGIN
45class vtkCellArray;
46class vtkDataArray;
47class vtkDataSet;
49class vtkIdTypeArray;
50class vtkPointSet;
52
53class VTKFILTERSGENERAL_EXPORT vtkWarpScalar : public vtkPointSetAlgorithm
54{
55public:
57
61 static vtkWarpScalar* New();
63 void PrintSelf(ostream& os, vtkIndent indent) override;
65
67
70 vtkSetMacro(ScaleFactor, double);
71 vtkGetMacro(ScaleFactor, double);
73
75
79 vtkSetMacro(UseNormal, vtkTypeBool);
80 vtkGetMacro(UseNormal, vtkTypeBool);
81 vtkBooleanMacro(UseNormal, vtkTypeBool);
83
85
89 vtkSetVector3Macro(Normal, double);
90 vtkGetVectorMacro(Normal, double, 3);
92
94
99 vtkSetMacro(XYPlane, vtkTypeBool);
100 vtkGetMacro(XYPlane, vtkTypeBool);
101 vtkBooleanMacro(XYPlane, vtkTypeBool);
103
105
110 vtkSetMacro(OutputPointsPrecision, int);
111 vtkGetMacro(OutputPointsPrecision, int);
113
115
123 vtkGetMacro(GenerateEnclosure, bool);
124 vtkSetMacro(GenerateEnclosure, bool);
125 vtkBooleanMacro(GenerateEnclosure, bool);
127
128 int FillInputPortInformation(int port, vtkInformation* info) override;
129
130protected:
132 ~vtkWarpScalar() override;
133
135 vtkInformationVector* outputVector) override;
137
141 unsigned int GetInputDimension(vtkDataSet* input);
145 void BuildSideWalls(vtkPointSet* output, int nInputPoints, vtkUnsignedCharArray* boundaryCells,
146 vtkIdTypeArray* boundaryFaceIndexes);
151
154 double Normal[3];
157 bool GenerateEnclosure = false;
158
159private:
160 vtkWarpScalar(const vtkWarpScalar&) = delete;
161 void operator=(const vtkWarpScalar&) = delete;
162};
163
164VTK_ABI_NAMESPACE_END
165#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:62
dynamic, self-adjusting array of vtkIdType
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 output of the same type as input.
concrete class for storing a set of points
Definition vtkPointSet.h:68
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