VTK  9.6.1
vtkSliderRepresentation2D.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 vtkSliderRepresentation2D_h
21#define vtkSliderRepresentation2D_h
22
23#include "vtkCoordinate.h" // For vtkViewportCoordinateMacro
24#include "vtkInteractionWidgetsModule.h" // For export macro
26
27VTK_ABI_NAMESPACE_BEGIN
28class vtkPoints;
29class vtkCellArray;
30class vtkPolyData;
32class vtkActor2D;
33class vtkCoordinate;
34class vtkProperty2D;
36class vtkWindow;
37class vtkViewport;
38class vtkTransform;
40class vtkTextProperty;
41class vtkTextMapper;
42class vtkTextActor;
43
44class VTKINTERACTIONWIDGETS_EXPORT vtkSliderRepresentation2D : public vtkSliderRepresentation
45{
46public:
51
53
57 void PrintSelf(ostream& os, vtkIndent indent) override;
59
69
79
81
85 void SetTitleText(const char*) override;
86 const char* GetTitleText() override;
88
90
94 vtkGetObjectMacro(SliderProperty, vtkProperty2D);
96
98
101 vtkGetObjectMacro(TubeProperty, vtkProperty2D);
102 vtkGetObjectMacro(CapProperty, vtkProperty2D);
104
106
110 vtkGetObjectMacro(SelectedProperty, vtkProperty2D);
112
114
117 vtkGetObjectMacro(LabelProperty, vtkTextProperty);
118 vtkGetObjectMacro(TitleProperty, vtkTextProperty);
120
122
127 void PlaceWidget(double bounds[6]) override;
128 void BuildRepresentation() override;
129 void StartWidgetInteraction(double eventPos[2]) override;
130 void WidgetInteraction(double newEventPos[2]) override;
131 void Highlight(int) override;
133
135
138 void GetActors2D(vtkPropCollection* propCollection) override;
139 void ReleaseGraphicsResources(vtkWindow* window) override;
140 int RenderOverlay(vtkViewport* viewport) override;
141 int RenderOpaqueGeometry(vtkViewport* viewport) override;
143
144protected:
147
148 // Positioning the widget
151
152 // Determine the parameter t along the slider
153 virtual double ComputePickPosition(double eventPos[2]);
154
155 // Define the geometry. It is constructed in canaonical position
156 // along the x-axis and then rotated into position.
159
166
173
180
184
188
190
191 // internal variables used for computation
192 double X;
193
194private:
196 void operator=(const vtkSliderRepresentation2D&) = delete;
197};
198
199VTK_ABI_NAMESPACE_END
200#endif
a actor that draws 2D data
Definition vtkActor2D.h:36
object to represent cell connectivity
perform coordinate transformation, and represent position, in a variety of vtk coordinate systems
a simple class to control print indentation
Definition vtkIndent.h:29
represent and manipulate 3D points
Definition vtkPoints.h:30
draw vtkPolyData onto the image plane
concrete dataset represents vertices, lines, polygons, and triangle strips
Definition vtkPolyData.h:72
an ordered list of Props
represent surface properties of a 2D image
void Highlight(int) override
Methods to interface with the vtkSliderWidget.
void WidgetInteraction(double newEventPos[2]) override
Methods to interface with the vtkSliderWidget.
int RenderOverlay(vtkViewport *viewport) override
Methods supporting the rendering process.
void SetTitleText(const char *) override
Specify the label text for this widget.
static vtkSliderRepresentation2D * New()
Instantiate the class.
void StartWidgetInteraction(double eventPos[2]) override
Methods to interface with the vtkSliderWidget.
vtkTransformPolyDataFilter * TubeXForm
vtkTransformPolyDataFilter * SliderXForm
vtkCoordinate * GetPoint1Coordinate()
Position the first end point of the slider.
void PlaceWidget(double bounds[6]) override
Methods to interface with the vtkSliderWidget.
vtkTransformPolyDataFilter * CapXForm
void ReleaseGraphicsResources(vtkWindow *window) override
Methods supporting the rendering process.
void GetActors2D(vtkPropCollection *propCollection) override
Methods supporting the rendering process.
void PrintSelf(ostream &os, vtkIndent indent) override
Standard methods for the class.
int RenderOpaqueGeometry(vtkViewport *viewport) override
Methods supporting the rendering process.
void BuildRepresentation() override
Methods to interface with the vtkSliderWidget.
virtual double ComputePickPosition(double eventPos[2])
const char * GetTitleText() override
Specify the label text for this widget.
~vtkSliderRepresentation2D() override
vtkCoordinate * GetPoint2Coordinate()
Position the second end point of the slider.
An actor that displays text.
2D text annotation
represent text properties.
transform points and associated normals and vectors for polygonal dataset
describes linear transformations via a 4x4 matrix
abstract specification for Viewports
Definition vtkViewport.h:47
window superclass for vtkRenderWindow
Definition vtkWindow.h:29