VTK  9.2.6
vtkCompassWidget.h
Go to the documentation of this file.
1/*=========================================================================
2
3 Program: Visualization Toolkit
4 Module: vtkCompassWidget.h
5
6 Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7 All rights reserved.
8 See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9
10 This software is distributed WITHOUT ANY WARRANTY; without even
11 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12 PURPOSE. See the above copyright notice for more information.
13
14=========================================================================*/
15/*-------------------------------------------------------------------------
16 Copyright 2008 Sandia Corporation.
17 Under the terms of Contract DE-AC04-94AL85000 with Sandia Corporation,
18 the U.S. Government retains certain rights in this software.
19-------------------------------------------------------------------------*/
20
76#ifndef vtkCompassWidget_h
77#define vtkCompassWidget_h
78
79#include "vtkAbstractWidget.h"
80#include "vtkDeprecation.h" // For VTK_DEPRECATED_IN_9_2_0
81#include "vtkGeovisCoreModule.h" // For export macro
82
84
85class VTKGEOVISCORE_EXPORT vtkCompassWidget : public vtkAbstractWidget
86{
87public:
92
94
98 void PrintSelf(ostream& os, vtkIndent indent) override;
100
107 {
108 this->Superclass::SetWidgetRepresentation(reinterpret_cast<vtkWidgetRepresentation*>(r));
109 }
110
115
117
120 double GetHeading();
121 void SetHeading(double v);
122 double GetTilt();
123 void SetTilt(double value);
124 double GetDistance();
125 void SetDistance(double value);
127
128protected:
130 ~vtkCompassWidget() override = default;
131
132 // These are the events that are handled
137
140 {
141 Start = 0,
145 DistanceAdjusting
146 };
147#if !defined(VTK_LEGACY_REMOVE)
148 VTK_DEPRECATED_IN_9_2_0("because leading underscore is reserved")
150#endif
151
154 double StartTime;
155
156private:
157 vtkCompassWidget(const vtkCompassWidget&) = delete;
158 void operator=(const vtkCompassWidget&) = delete;
159};
160
161#endif
define the API for widget / widget representation
set a value by manipulating something
void SetTilt(double value)
Get the value for this widget.
~vtkCompassWidget() override=default
void SetRepresentation(vtkCompassRepresentation *r)
Specify an instance of vtkWidgetRepresentation used to represent this widget in the scene.
void SetHeading(double v)
Get the value for this widget.
double GetHeading()
Get the value for this widget.
static void EndSelectAction(vtkAbstractWidget *)
static void TimerAction(vtkAbstractWidget *)
static vtkCompassWidget * New()
Instantiate the class.
void SetDistance(double value)
Get the value for this widget.
void PrintSelf(ostream &os, vtkIndent indent) override
Standard macros.
void CreateDefaultRepresentation() override
Create the default widget representation if one is not set.
double GetDistance()
Get the value for this widget.
double GetTilt()
Get the value for this widget.
static void MoveAction(vtkAbstractWidget *)
static void SelectAction(vtkAbstractWidget *)
a simple class to control print indentation
Definition vtkIndent.h:49
abstract class defines interface between the widget and widget representation classes
#define VTK_DEPRECATED_IN_9_2_0(reason)