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
29#ifndef vtkWarpScalar_h
30#define vtkWarpScalar_h
31
32#include "vtkFiltersGeneralModule.h" // For export macro
34
35VTK_ABI_NAMESPACE_BEGIN
36class vtkCellArray;
37class vtkDataArray;
38class vtkDataSet;
40class vtkIdTypeArray;
41class vtkPointSet;
43
44class VTKFILTERSGENERAL_EXPORT vtkWarpScalar : public vtkPointSetAlgorithm
45{
46public:
48
52 static vtkWarpScalar* New();
54 void PrintSelf(ostream& os, vtkIndent indent) override;
56
58
61 vtkSetMacro(ScaleFactor, double);
62 vtkGetMacro(ScaleFactor, double);
64
66
70 vtkSetMacro(UseNormal, vtkTypeBool);
71 vtkGetMacro(UseNormal, vtkTypeBool);
72 vtkBooleanMacro(UseNormal, vtkTypeBool);
74
76
80 vtkSetVector3Macro(Normal, double);
81 vtkGetVectorMacro(Normal, double, 3);
83
85
90 vtkSetMacro(XYPlane, vtkTypeBool);
91 vtkGetMacro(XYPlane, vtkTypeBool);
92 vtkBooleanMacro(XYPlane, vtkTypeBool);
94
96
101 vtkSetMacro(OutputPointsPrecision, int);
102 vtkGetMacro(OutputPointsPrecision, int);
104
106
114 vtkGetMacro(GenerateEnclosure, bool);
115 vtkSetMacro(GenerateEnclosure, bool);
116 vtkBooleanMacro(GenerateEnclosure, bool);
118
119 int FillInputPortInformation(int port, vtkInformation* info) override;
120
121protected:
123 ~vtkWarpScalar() override;
124
126 vtkInformationVector* outputVector) override;
128
132 unsigned int GetInputDimension(vtkDataSet* input);
136 void BuildSideWalls(vtkPointSet* output, int nInputPoints, vtkUnsignedCharArray* boundaryCells,
137 vtkIdTypeArray* boundaryFaceIndexes);
142
145 double Normal[3];
148 bool GenerateEnclosure = false;
149
150private:
151 vtkWarpScalar(const vtkWarpScalar&) = delete;
152 void operator=(const vtkWarpScalar&) = delete;
153};
154
155VTK_ABI_NAMESPACE_END
156#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:53
dynamic, self-adjusting array of vtkIdType
a simple class to control print indentation
Definition vtkIndent.h:29
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:59
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