VTK  9.3.0
vtkDeflectNormals.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
16 #ifndef vtkDeflectNormals_h
17 #define vtkDeflectNormals_h
18 
19 #include "vtkDataSetAlgorithm.h"
20 #include "vtkFiltersGeneralModule.h" // For export macro
21 
22 VTK_ABI_NAMESPACE_BEGIN
23 class VTKFILTERSGENERAL_EXPORT vtkDeflectNormals : public vtkDataSetAlgorithm
24 {
25 public:
28  void PrintSelf(ostream& os, vtkIndent indent) override;
29 
31 
35  vtkSetMacro(ScaleFactor, double);
36  vtkGetMacro(ScaleFactor, double);
38 
40 
44  vtkSetVector3Macro(UserNormal, double);
45  vtkGetVector3Macro(UserNormal, double);
47 
49 
53  vtkSetMacro(UseUserNormal, bool);
54  vtkGetMacro(UseUserNormal, bool);
55  vtkBooleanMacro(UseUserNormal, bool);
57 
58 protected:
60  ~vtkDeflectNormals() override;
61 
63 
64  double ScaleFactor = 1.0;
65  double UserNormal[3] = { 0.0, 0.0, 1.0 };
66  bool UseUserNormal = false;
67 
68 private:
69  vtkDeflectNormals(const vtkDeflectNormals&) = delete;
70  void operator=(const vtkDeflectNormals&) = delete;
71 };
72 
73 VTK_ABI_NAMESPACE_END
74 #endif
Superclass for algorithms that produce output of the same type as input.
deflect normals using a 3 component vector field
static vtkDeflectNormals * New()
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
This is called within ProcessRequest when a request asks the algorithm to do its work.
~vtkDeflectNormals() override
a simple class to control print indentation
Definition: vtkIndent.h:38
Store zero or more vtkInformation instances.
Store vtkAlgorithm input/output information.