VTK  9.2.6
vtkDisplaySizedImplicitPlaneWidget.h
Go to the documentation of this file.
1/*=========================================================================
2
3 Program: Visualization Toolkit
4 Module: vtkDisplaySizedImplicitPlaneWidget.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=========================================================================*/
99#ifndef vtkDisplaySizedImplicitPlaneWidget_h
100#define vtkDisplaySizedImplicitPlaneWidget_h
101
102#include "vtkAbstractWidget.h"
103#include "vtkDeprecation.h" // For VTK_DEPRECATED_IN_9_2_0
104#include "vtkInteractionWidgetsModule.h" // For export macro
105
107class vtkDisplaySizedImplicitPlaneInteractionCallback;
108
109class VTKINTERACTIONWIDGETS_EXPORT vtkDisplaySizedImplicitPlaneWidget : public vtkAbstractWidget
110{
111 friend class vtkDisplaySizedImplicitPlaneInteractionCallback;
112
113public:
118
120
124 void PrintSelf(ostream& os, vtkIndent indent) override;
126
133
134 // Description:
135 // Disable/Enable the widget if needed.
136 // Unobserved the camera if the widget is disabled.
137 void SetEnabled(int enabling) override;
138
143 void SetLockNormalToCamera(int lock);
144
149 {
150 return reinterpret_cast<vtkDisplaySizedImplicitPlaneRepresentation*>(this->WidgetRep);
151 }
152
157
158protected:
161
162 // Manage the state of the widget
165 {
166 Start = 0,
167 Active
168 };
169#if !defined(VTK_LEGACY_REMOVE)
170 VTK_DEPRECATED_IN_9_2_0("because leading underscore is reserved")
172#endif
173
174 // These methods handle events
188
193 int UpdateCursorShape(int interactionState);
194
196
199 vtkDisplaySizedImplicitPlaneInteractionCallback* InteractionCallback;
202
203private:
205 void operator=(const vtkDisplaySizedImplicitPlaneWidget&) = delete;
206};
207
208#endif
define the API for widget / widget representation
vtkWidgetRepresentation * WidgetRep
a class defining the representation for a vtkDisplaySizedImplicitPlaneWidget
3D widget for manipulating a display sized plane
void SetRepresentation(vtkDisplaySizedImplicitPlaneRepresentation *rep)
Specify an instance of vtkWidgetRepresentation used to represent this widget in the scene.
static vtkDisplaySizedImplicitPlaneWidget * New()
Instantiate the object.
void PrintSelf(ostream &os, vtkIndent indent) override
Standard vtkObject methods.
void InvokeInteractionCallback()
Handle the interaction callback that may come from the representation.
static void EndSelectAction(vtkAbstractWidget *)
static void MoveAction(vtkAbstractWidget *)
static void ScaleAction(vtkAbstractWidget *)
void SetLockNormalToCamera(int lock)
Observe/Unobserve the camera if the widget is locked/unlocked to update the vtkImplicitePlaneRepresen...
static void SelectAction3D(vtkAbstractWidget *)
vtkDisplaySizedImplicitPlaneInteractionCallback * InteractionCallback
Handle the interaction callback that may come from the representation.
void SetEnabled(int enabling) override
Methods for activating this widget.
int UpdateCursorShape(int interactionState)
Update the cursor shape based on the interaction state.
vtkDisplaySizedImplicitPlaneRepresentation * GetDisplaySizedImplicitPlaneRepresentation()
Return the representation as a vtkDisplaySizedImplicitPlaneRepresentation.
static void MoveAction3D(vtkAbstractWidget *)
static void SelectAction(vtkAbstractWidget *)
static void MovePlaneAction(vtkAbstractWidget *)
static void TranslationAxisLock(vtkAbstractWidget *)
static void PickNormalAction(vtkAbstractWidget *)
static void TranslateAction(vtkAbstractWidget *)
void CreateDefaultRepresentation() override
Create the default widget representation if one is not set.
static void TranslationAxisUnLock(vtkAbstractWidget *)
static void EndSelectAction3D(vtkAbstractWidget *)
static void PickOriginAction(vtkAbstractWidget *)
a simple class to control print indentation
Definition vtkIndent.h:34
#define VTK_DEPRECATED_IN_9_2_0(reason)