VTK  9.5.2
vtkDistanceWidget.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
81
82#ifndef vtkDistanceWidget_h
83#define vtkDistanceWidget_h
84
85#include "vtkAbstractWidget.h"
86#include "vtkInteractionWidgetsModule.h" // For export macro
87#include "vtkWrappingHints.h" // For VTK_MARSHALAUTO
88
89VTK_ABI_NAMESPACE_BEGIN
91class vtkHandleWidget;
92class vtkDistanceWidgetCallback;
93
94class VTKINTERACTIONWIDGETS_EXPORT VTK_MARSHALAUTO vtkDistanceWidget : public vtkAbstractWidget
95{
96public:
101
103
107 void PrintSelf(ostream& os, vtkIndent indent) override;
109
115 void SetEnabled(int) override;
116
126
134
139
145
152
153 enum
154 {
155 Start = 0,
158 };
159
161
171 virtual void SetWidgetStateToStart();
174
178 virtual int GetWidgetState() { return this->WidgetState; }
179
180protected:
183
184 // The state of the widget
187
188 // Callback interface to capture events when
189 // placing the widget.
196
197 // The positioning handle widgets
202
203 // Methods invoked when the handles at the
204 // end points of the widget are manipulated
205 void StartDistanceInteraction(int handleNum);
206 void DistanceInteraction(int handleNum);
207 void EndDistanceInteraction(int handleNum);
208
210
211private:
212 vtkDistanceWidget(const vtkDistanceWidget&) = delete;
213 void operator=(const vtkDistanceWidget&) = delete;
214};
215
216VTK_ABI_NAMESPACE_END
217#endif
void SetWidgetRepresentation(vtkWidgetRepresentation *r)
vtkWidgetRepresentation * WidgetRep
represent the vtkDistanceWidget
friend class vtkDistanceWidgetCallback
virtual void SetWidgetStateToStart()
Set the state of the widget.
virtual int GetWidgetState()
Return the current widget state.
static void MoveAction3D(vtkAbstractWidget *)
void PrintSelf(ostream &os, vtkIndent indent) override
Standard methods for a VTK class.
virtual void SetWidgetStateToManipulate()
Set the state of the widget.
vtkDistanceRepresentation * GetDistanceRepresentation()
Return the representation as a vtkDistanceRepresentation.
static void EndSelectAction(vtkAbstractWidget *)
void SetRepresentation(vtkDistanceRepresentation *r)
Specify an instance of vtkWidgetRepresentation used to represent this widget in the scene.
void EndDistanceInteraction(int handleNum)
void CreateDefaultRepresentation() override
Create the default widget representation if one is not set.
static void AddPointAction3D(vtkAbstractWidget *)
~vtkDistanceWidget() override
vtkHandleWidget * Point2Widget
void StartDistanceInteraction(int handleNum)
vtkHandleWidget * Point1Widget
vtkDistanceWidgetCallback * DistanceWidgetCallback1
void DistanceInteraction(int handleNum)
vtkDistanceWidgetCallback * DistanceWidgetCallback2
static vtkDistanceWidget * New()
Instantiate this class.
static void MoveAction(vtkAbstractWidget *)
void SetEnabled(int) override
The method for activating and deactivating this widget.
void SetProcessEvents(vtkTypeBool) override
Methods to change the whether the widget responds to interaction.
static void AddPointAction(vtkAbstractWidget *)
static void EndSelectAction3D(vtkAbstractWidget *)
a general widget for moving handles
a simple class to control print indentation
Definition vtkIndent.h:108
abstract class defines interface between the widget and widget representation classes
int vtkTypeBool
Definition vtkABI.h:64
#define VTK_MARSHALAUTO