VTK  9.5.2
vtkMagnifierRepresentation.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
19
20#ifndef vtkMagnifierRepresentation_h
21#define vtkMagnifierRepresentation_h
22
23#include "vtkCoordinate.h" //Because of the viewport coordinate macro
24#include "vtkInteractionWidgetsModule.h" // For export macro
26#include "vtkWrappingHints.h" // For VTK_MARSHALAUTO
27
28VTK_ABI_NAMESPACE_BEGIN
30class vtkPoints;
31class vtkPolyData;
33class vtkActor2D;
34class vtkProperty2D;
35
36class VTKINTERACTIONWIDGETS_EXPORT VTK_MARSHALAUTO vtkMagnifierRepresentation
38{
39public:
44
46
50 void PrintSelf(ostream& os, vtkIndent indent) override;
52
54
57 void SetRenderer(vtkRenderer* ren) override { this->Superclass::SetRenderer(ren); }
59
61
68 vtkSetClampMacro(MagnificationFactor, double, 0.001, 1000.0);
69 vtkGetMacro(MagnificationFactor, double);
71
73
89
91
94 vtkSetVector2Macro(Size, int);
95 vtkGetVector2Macro(Size, int);
97
99
103 vtkSetMacro(Border, bool);
104 vtkGetMacro(Border, bool);
105 vtkBooleanMacro(Border, bool);
107
109
112 vtkGetObjectMacro(BorderProperty, vtkProperty2D);
114
123
125
129 void BuildRepresentation() override;
130 void WidgetInteraction(double eventPos[2]) override;
132
139 vtkSetClampMacro(InteractionState, int, Invisible, Visible);
140
146
148
158
164
165protected:
168
169 // Ivars
172 int Size[2];
173 bool Border;
175
176 // The internal magnification renderer and supporting classes
180
181 // Border representation.
186
187private:
189 void operator=(const vtkMagnifierRepresentation&) = delete;
190};
191
192VTK_ABI_NAMESPACE_END
193#endif
a actor that draws 2D data
Definition vtkActor2D.h:36
perform coordinate transformation, and represent position, in a variety of vtk coordinate systems
a simple class to control print indentation
Definition vtkIndent.h:29
int RenderTranslucentPolygonalGeometry(vtkViewport *) override
These