|
SMTK
@SMTK_VERSION@
Simulation Modeling Tool Kit
|
3D widget for manipulating an infinite cylinder More...
#include <vtkConeWidget.h>
Public Types | |
| typedef vtkAbstractWidget | Superclass |
| Standard vtkObject methods. | |
Public Member Functions | |
| virtual int | IsA (const char *type) |
| vtkConeWidget * | NewInstance () const |
| void | PrintSelf (ostream &os, vtkIndent indent) override |
| vtkConeWidget (const vtkConeWidget &)=delete | |
| vtkConeWidget & | operator= (const vtkConeWidget &)=delete |
| void | SetRepresentation (vtkConeRepresentation *rep) |
| Specify an instance of vtkWidgetRepresentation used to represent this widget in the scene. More... | |
| void | SetEnabled (int enabling) override |
| Control widget interactivity, allowing users to interact with the camera or other widgets. More... | |
| vtkConeRepresentation * | GetConeRepresentation () |
| Return the representation as a vtkConeRepresentation. | |
| void | CreateDefaultRepresentation () override |
| Create the default widget representation if one is not set. | |
Static Public Member Functions | |
| static vtkConeWidget * | New () |
| Instantiate the object. | |
| static int | IsTypeOf (const char *type) |
| static vtkConeWidget * | SafeDownCast (vtkObjectBase *o) |
Protected Types | |
| enum | _WidgetState { Start = 0, Active } |
Protected Member Functions | |
| virtual vtkObjectBase * | NewInstanceInternal () const |
| int | UpdateCursorShape (int interactionState) |
| Update the cursor shape based on the interaction state. More... | |
Protected Attributes | |
| int | WidgetState |
3D widget for manipulating an infinite cylinder
This 3D widget defines an infinite cylinder that can be interactively placed in a scene. The widget is assumed to consist of four parts: 1) a cylinder contained in a 2) bounding box, with a 3) cylinder axis, which is rooted at a 4) center point in the bounding box. (The representation paired with this widget determines the actual geometry of the widget.)
To use this widget, you generally pair it with a vtkConeRepresentation (or a subclass). Various options are available for controlling how the representation appears, and how the widget functions.
If the cylinder axis is selected:
LeftButtonPressEvent - select normal
LeftButtonReleaseEvent - release (end select) normal
MouseMoveEvent - orient the normal vector
If the center point (handle) is selected:
LeftButtonPressEvent - select handle (if on slider)
LeftButtonReleaseEvent - release handle (if selected)
MouseMoveEvent - move the center point (constrained to plane or on the
axis if CTRL key is pressed)
If the cylinder is selected:
LeftButtonPressEvent - select cylinder
LeftButtonReleaseEvent - release cylinder
MouseMoveEvent - increase/decrease cylinder radius
If the outline is selected:
LeftButtonPressEvent - select outline
LeftButtonReleaseEvent - release outline
MouseMoveEvent - move the outline
If the keypress characters are used
'Down/Left' Move cylinder away from viewer
'Up/Right' Move cylinder towards viewer
In all the cases, independent of what is picked, the widget responds to the
following VTK events:
MiddleButtonPressEvent - move the cylinder
MiddleButtonReleaseEvent - release the cylinder
RightButtonPressEvent - scale the widget's representation
RightButtonReleaseEvent - stop scaling the widget
MouseMoveEvent - scale (if right button) or move (if middle button) the widget
vtkWidgetEvent::Select -- some part of the widget has been selected vtkWidgetEvent::EndSelect -- the selection process has completed vtkWidgetEvent::Move -- a request for widget motion has been invoked vtkWidgetEvent::Up and vtkWidgetEvent::Down -- MoveConeAction
vtkCommand::StartInteractionEvent (on vtkWidgetEvent::Select) vtkCommand::EndInteractionEvent (on vtkWidgetEvent::EndSelect) vtkCommand::InteractionEvent (on vtkWidgetEvent::Move)
|
override |
Control widget interactivity, allowing users to interact with the camera or other widgets.
The camera is unobserved when the widget is disabled.
| void vtkConeWidget::SetRepresentation | ( | vtkConeRepresentation * | rep | ) |
Specify an instance of vtkWidgetRepresentation used to represent this widget in the scene.
Note that the representation is a subclass of vtkProp so it can be added to the renderer independent of the widget.
|
protected |
Update the cursor shape based on the interaction state.
Returns 1 if the cursor shape requested is different from the existing one.
1.8.17