VTK  9.3.1
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
33 #include "vtkPointSetAlgorithm.h"
34 
35 VTK_ABI_NAMESPACE_BEGIN
36 class vtkCellArray;
37 class vtkDataArray;
38 class vtkDataSet;
40 class vtkIdTypeArray;
41 class vtkPointSet;
43 
44 class VTKFILTERSGENERAL_EXPORT vtkWarpScalar : public vtkPointSetAlgorithm
45 {
46 public:
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 
121 protected:
122  vtkWarpScalar();
123  ~vtkWarpScalar() override;
124 
125  int RequestDataObject(vtkInformation* request, vtkInformationVector** inputVector,
126  vtkInformationVector* outputVector) override;
128 
132  unsigned int GetInputDimension(vtkDataSet* input);
136  void BuildSideWalls(vtkPointSet* output, int nInputPoints, vtkUnsignedCharArray* boundaryCells,
137  vtkIdTypeArray* boundaryFaceIndexes);
141  void AppendArrays(vtkDataSetAttributes* setData);
142 
143  double ScaleFactor;
145  double Normal[3];
148  bool GenerateEnclosure = false;
149 
150 private:
151  vtkWarpScalar(const vtkWarpScalar&) = delete;
152  void operator=(const vtkWarpScalar&) = delete;
153 };
154 
155 VTK_ABI_NAMESPACE_END
156 #endif
int OutputPointsPrecision
virtual int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *)
This is called by the superclass.
Store vtkAlgorithm input/output information.
virtual int RequestDataObject(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
This is called by the superclass.
abstract class to specify dataset behavior
Definition: vtkDataSet.h:52
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
concrete class for storing a set of points
Definition: vtkPointSet.h:58
dynamic, self-adjusting array of vtkIdType
int FillInputPortInformation(int port, vtkInformation *info) override
Fill the input port information objects for this algorithm.
int vtkTypeBool
Definition: vtkABI.h:64
vtkTypeBool XYPlane
vtkTypeBool UseNormal
a simple class to control print indentation
Definition: vtkIndent.h:28
abstract superclass for arrays of numeric data
Definition: vtkDataArray.h:44
Superclass for algorithms that produce output of the same type as input.
represent and manipulate attribute data in a dataset
double ScaleFactor
dynamic, self-adjusting array of unsigned char
object to represent cell connectivity
Definition: vtkCellArray.h:175
static vtkPointSetAlgorithm * New()
Store zero or more vtkInformation instances.
deform geometry with scalar data
Definition: vtkWarpScalar.h:44