vtkPVPlane.h
Go to the documentation of this file.
1 // SPDX-FileCopyrightText: Copyright (c) Kitware Inc.
2 // SPDX-License-Identifier: BSD-3-Clause
12 #ifndef vtkPVPlane_h
13 #define vtkPVPlane_h
14 
15 #include "vtkNew.h" // For vtkNew
16 #include "vtkPVVTKExtensionsMiscModule.h" // Needed for exports
17 #include "vtkPlane.h"
18 
20 {
21 public:
22  static vtkPVPlane* New();
23  vtkTypeMacro(vtkPVPlane, vtkPlane);
24  void PrintSelf(ostream& os, vtkIndent indent) override;
25 
27 
31  void SetOffset(double offset);
32  vtkGetMacro(Offset, double);
34 
36 
39  void SetOrigin(double x, double y, double z) override;
40  void SetOrigin(const double origin[3]) override
41  {
42  this->SetOrigin(origin[0], origin[1], origin[2]);
43  }
45 
47 
50  void SetNormal(double x, double y, double z) override;
51  void SetNormal(const double normal[3]) override
52  {
53  this->SetNormal(normal[0], normal[1], normal[2]);
54  }
56 
58 
61  void SetAxisAligned(bool axisAligned);
62  vtkGetMacro(AxisAligned, bool);
64 
66 
70  void SetTransform(vtkAbstractTransform*) override;
71  void SetTransform(const double elements[16]) override;
73 
75 
82  void EvaluateFunction(vtkDataArray* input, vtkDataArray* output) override;
83  double EvaluateFunction(double x[3]) override;
85 
92  void EvaluateGradient(double x[3], double g[3]) override;
93 
94 protected:
95  vtkPVPlane();
96  ~vtkPVPlane() override;
97 
98  void InternalPlaneUpdate();
99 
100  double Offset;
102 
104 
105 private:
106  vtkPVPlane(const vtkPVPlane&) = delete;
107  void operator=(const vtkPVPlane&) = delete;
108 };
109 
110 #endif
void SetOrigin(const double origin[3]) override
sets axis to the nearest canonical axis.
Definition: vtkPVPlane.h:40
virtual double EvaluateFunction(double x[3])=0
vtkNew< vtkPlane > Plane
Definition: vtkPVPlane.h:103
virtual void SetTransform(vtkAbstractTransform *)
virtual void SetNormal(double, double, double)
static vtkPlane * New()
double Offset
Definition: vtkPVPlane.h:100
double EvaluateFunction(double x[3])
void PrintSelf(ostream &os, vtkIndent indent) VTK_OVERRIDE
void SetNormal(const double normal[3]) override
If AxisAligned is true, sets axis to the nearest canonical axis.
Definition: vtkPVPlane.h:51
#define VTKPVVTKEXTENSIONSMISC_EXPORT
void EvaluateGradient(double x[3], double g[3])
extends vtkPlane to add Offset parameter.
Definition: vtkPVPlane.h:19
bool AxisAligned
Definition: vtkPVPlane.h:101
virtual void SetOrigin(double, double, double)
void operator=(const vtkObjectBase &)