vtkPVBox.h
Go to the documentation of this file.
1 // SPDX-FileCopyrightText: Copyright (c) Kitware Inc.
2 // SPDX-License-Identifier: BSD-3-Clause
12 #ifndef vtkPVBox_h
13 #define vtkPVBox_h
14 
15 #include "vtkBox.h"
16 #include "vtkPVVTKExtensionsMiscModule.h" //needed for exports
17 
19 {
20 public:
21  static vtkPVBox* New();
22  vtkTypeMacro(vtkPVBox, vtkBox);
23  void PrintSelf(ostream& os, vtkIndent indent) override;
24 
26 
32  void SetReferenceBounds(const double bds[6]);
34  double xmin, double xmax, double ymin, double ymax, double zmin, double zmax)
35  {
36  double bds[6] = { xmin, xmax, ymin, ymax, zmin, zmax };
37  this->SetReferenceBounds(bds);
38  }
39  vtkGetVector6Macro(ReferenceBounds, double);
41 
43 
47  void SetUseReferenceBounds(bool val);
48  vtkGetMacro(UseReferenceBounds, bool);
50 
52 
55  void SetPosition(double x, double y, double z)
56  {
57  double pos[3] = { x, y, z };
58  this->SetPosition(pos);
59  }
60  void SetPosition(const double pos[3]);
61  vtkGetVector3Macro(Position, double);
63 
65 
68  void SetRotation(double x, double y, double z)
69  {
70  double pos[3] = { x, y, z };
71  this->SetRotation(pos);
72  }
73  void SetRotation(const double pos[3]);
74  vtkGetVector3Macro(Rotation, double);
76 
78 
81  void SetScale(double x, double y, double z)
82  {
83  double pos[3] = { x, y, z };
84  this->SetScale(pos);
85  }
86  void SetScale(const double pos[3]);
87  vtkGetVector3Macro(Scale, double);
89 
90 protected:
91  vtkPVBox();
92  ~vtkPVBox() override;
93  void UpdateTransform();
94 
95  double Position[3];
96  double Rotation[3];
97  double Scale[3];
98  double ReferenceBounds[6];
100 
101 private:
102  vtkPVBox(const vtkPVBox&) = delete;
103  void operator=(const vtkPVBox&) = delete;
104 };
105 
106 #endif
static vtkBox * New()
extends vtkBox to add ParaView specific API.
Definition: vtkPVBox.h:18
void SetRotation(double x, double y, double z)
Get/Set Rotation for the box.
Definition: vtkPVBox.h:68
#define VTKPVVTKEXTENSIONSMISC_EXPORT
void SetReferenceBounds(double xmin, double xmax, double ymin, double ymax, double zmin, double zmax)
These bounds are used when UseReferenceBounds is set to true.
Definition: vtkPVBox.h:33
void SetPosition(double x, double y, double z)
Get/Set Position of the box.
Definition: vtkPVBox.h:55
bool UseReferenceBounds
Definition: vtkPVBox.h:99
void SetScale(double x, double y, double z)
Get/Set Scale for the box.
Definition: vtkPVBox.h:81
void operator=(const vtkObjectBase &)
void PrintSelf(ostream &os, vtkIndent indent) VTK_OVERRIDE