vtkPVJoystickFly.h
Go to the documentation of this file.
1 // SPDX-FileCopyrightText: Copyright (c) Kitware Inc.
2 // SPDX-License-Identifier: BSD-3-Clause
11 #ifndef vtkPVJoystickFly_h
12 #define vtkPVJoystickFly_h
13 
14 #include "vtkCameraManipulator.h"
15 #include "vtkPVVTKExtensionsInteractionStyleModule.h" // needed for export macro
16 
17 class vtkRenderer;
18 
20 {
21 public:
23  void PrintSelf(ostream& os, vtkIndent indent) override;
24 
26 
30  void OnMouseMove(int x, int y, vtkRenderer* ren, vtkRenderWindowInteractor* rwi) override;
31  void OnButtonDown(int x, int y, vtkRenderer* ren, vtkRenderWindowInteractor* rwi) override;
32  void OnButtonUp(int x, int y, vtkRenderer* ren, vtkRenderWindowInteractor* rwi) override;
34 
36 
39  vtkSetClampMacro(FlySpeed, double, 1, 30);
40  vtkGetMacro(FlySpeed, double);
42 
43 protected:
45  ~vtkPVJoystickFly() override;
46 
47  int In;
48  int FlyFlag;
49 
50  double FlySpeed;
51  double Scale;
53  double CameraXAxis[3];
54  double CameraYAxis[3];
55  double CameraZAxis[3];
56 
57  void Fly(vtkRenderer* ren, vtkRenderWindowInteractor* rwi, double scale, double speed);
58  void ComputeCameraAxes(vtkRenderer*);
59 
60  vtkPVJoystickFly(const vtkPVJoystickFly&) = delete;
61  void operator=(const vtkPVJoystickFly&) = delete;
62 };
63 
64 #endif
Abstraction of style away from button.
void PrintSelf(ostream &os, vtkIndent indent) override
#define VTKPVVTKEXTENSIONSINTERACTIONSTYLE_EXPORT
Fly camera towards or away from the object.
virtual void OnMouseMove(int x, int y, vtkRenderer *ren, vtkRenderWindowInteractor *iren)
virtual void OnButtonUp(int x, int y, vtkRenderer *ren, vtkRenderWindowInteractor *iren)
virtual void OnButtonDown(int x, int y, vtkRenderer *ren, vtkRenderWindowInteractor *iren)