VTK  9.7.20261003
vtkTrackballZoom.h
Go to the documentation of this file.
1// SPDX-FileCopyrightText: Copyright (c) Kitware Inc.
2// SPDX-License-Identifier: BSD-3-Clause
20
21#ifndef vtkTrackballZoom_h
22#define vtkTrackballZoom_h
23
25
26#include "vtkInteractionStyleModule.h" // needed for export macro
27#include "vtkWrappingHints.h" // For VTK_MARSHALAUTO
28
29VTK_ABI_NAMESPACE_BEGIN
30class VTKINTERACTIONSTYLE_EXPORT VTK_MARSHALAUTO vtkTrackballZoom : public vtkCameraManipulator
31{
32public:
35 void PrintSelf(ostream& os, vtkIndent indent) override;
36
38
41 void StartInteraction() override {};
42 void EndInteraction() override {};
43 void OnKeyDown(vtkRenderWindowInteractor* vtkNotUsed(rwi)) override {}
44 void OnKeyUp(vtkRenderWindowInteractor* vtkNotUsed(rwi)) override {}
45 void OnButtonUp(int, int, vtkRenderer*, vtkRenderWindowInteractor*) override {}
47
49
53 void OnMouseMove(int x, int y, vtkRenderer* ren, vtkRenderWindowInteractor* rwi) override;
54 void OnButtonDown(int x, int y, vtkRenderer* ren, vtkRenderWindowInteractor* rwi) override;
56
61 vtkSetMacro(UseDollyForPerspectiveProjection, bool);
62 vtkGetMacro(UseDollyForPerspectiveProjection, bool);
63 vtkBooleanMacro(UseDollyForPerspectiveProjection, bool);
64
65protected:
68
69 // Subclass can access it
70 double ZoomScale = 0.0;
71
72private:
73 vtkTrackballZoom(const vtkTrackballZoom&) = delete;
74 void operator=(const vtkTrackballZoom&) = delete;
75
76 bool UseDollyForPerspectiveProjection = true;
77};
78VTK_ABI_NAMESPACE_END
79#endif
a simple class to control print indentation
Definition vtkIndent.h:108
platform-independent render window interaction including picking and frame rate control.
abstract specification for renderers
static vtkTrackballZoom * New()
void OnButtonUp(int, int, vtkRenderer *, vtkRenderWindowInteractor *) override
Unimplemented methods from vtkCameraManipulator.
void OnButtonDown(int x, int y, vtkRenderer *ren, vtkRenderWindowInteractor *rwi) override
Event bindings controlling the effects of pressing mouse buttons or moving the mouse.
~vtkTrackballZoom() override
void OnKeyDown(vtkRenderWindowInteractor *rwi) override
Unimplemented methods from vtkCameraManipulator.
void OnMouseMove(int x, int y, vtkRenderer *ren, vtkRenderWindowInteractor *rwi) override
Event bindings controlling the effects of pressing mouse buttons or moving the mouse.
void OnKeyUp(vtkRenderWindowInteractor *rwi) override
Unimplemented methods from vtkCameraManipulator.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
void EndInteraction() override
Unimplemented methods from vtkCameraManipulator.
void StartInteraction() override
Unimplemented methods from vtkCameraManipulator.
#define VTK_MARSHALAUTO