VTK  9.1.0
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
86#ifndef vtkCompassWidget_h
87#define vtkCompassWidget_h
88
89#include "vtkAbstractWidget.h"
90#include "vtkGeovisCoreModule.h" // For export macro
91
93
94class VTKGEOVISCORE_EXPORT vtkCompassWidget : public vtkAbstractWidget
95{
96public:
101
103
107 void PrintSelf(ostream& os, vtkIndent indent) override;
109
116 {
117 this->Superclass::SetWidgetRepresentation(reinterpret_cast<vtkWidgetRepresentation*>(r));
118 }
119
124
126
129 double GetHeading();
130 void SetHeading(double v);
131 double GetTilt();
132 void SetTilt(double value);
133 double GetDistance();
134 void SetDistance(double value);
136
137protected:
139 ~vtkCompassWidget() override = default;
140
141 // These are the events that are handled
146
149 {
150 Start = 0,
154 DistanceAdjusting
155 };
156
159 double StartTime;
160
161private:
162 vtkCompassWidget(const vtkCompassWidget&) = delete;
163 void operator=(const vtkCompassWidget&) = delete;
164};
165
166#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:113
abstract class defines interface between the widget and widget representation classes