Loading [MathJax]/extensions/tex2jax.js
VTK  9.4.20250413
vtkImplicitConeWidget.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
3
96#ifndef vtkImplicitConeWidget_h
97#define vtkImplicitConeWidget_h
98
99#include "vtkAbstractWidget.h"
100#include "vtkInteractionWidgetsModule.h" // For export macro
101#include "vtkWrappingHints.h" // For VTK_MARSHALAUTO
102
103VTK_ABI_NAMESPACE_BEGIN
105
106class VTKINTERACTIONWIDGETS_EXPORT VTK_MARSHALAUTO vtkImplicitConeWidget : public vtkAbstractWidget
107{
108public:
111
118
123 {
124 return reinterpret_cast<vtkImplicitConeRepresentation*>(this->WidgetRep);
125 }
126
131
132private:
134 ~vtkImplicitConeWidget() override = default;
135
136 enum WidgetStateType
137 {
138 Idle = 0,
139 Active
140 };
141
142 // Manage the state of the widget
143 WidgetStateType WidgetState = vtkImplicitConeWidget::Idle;
144
145 // These methods handle events
146 static void SelectAction(vtkAbstractWidget* widget);
147 static void TranslateAction(vtkAbstractWidget* widget);
148 static void ScaleAction(vtkAbstractWidget* widget);
149 static void EndSelectAction(vtkAbstractWidget* widget);
150 static void MoveAction(vtkAbstractWidget* widget);
151 static void MoveConeAction(vtkAbstractWidget* widget);
152 static void TranslationAxisLock(vtkAbstractWidget* widget);
153 static void TranslationAxisUnLock(vtkAbstractWidget* widget);
154
159 bool UpdateCursorShape(int interactionState);
160
162 void operator=(const vtkImplicitConeWidget&) = delete;
163};
164
165VTK_ABI_NAMESPACE_END
166#endif
define the API for widget / widget representation
vtkWidgetRepresentation * WidgetRep
defining the representation for a vtkImplicitConeWidget
3D widget for manipulating an infinite cone
void CreateDefaultRepresentation() override
Create the default widget representation if one is not set.
void SetRepresentation(vtkImplicitConeRepresentation *rep)
Specify an instance of vtkWidgetRepresentation used to represent this widget in the scene.
vtkImplicitConeRepresentation * GetConeRepresentation()
Return the representation as a vtkImplicitConeRepresentation.
static vtkImplicitConeWidget * New()
#define VTK_MARSHALAUTO