VTK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | Static Public Member Functions | Protected Member Functions | Static Protected Member Functions | Protected Attributes | Friends | List of all members
vtkDistanceWidget Class Reference

measure the distance between two points More...

#include <vtkDistanceWidget.h>

Inheritance diagram for vtkDistanceWidget:
[legend]
Collaboration diagram for vtkDistanceWidget:
[legend]

Public Types

enum  { Start =0, Define, Manipulate }
 
- Public Types inherited from vtkAbstractWidget
typedef vtkInteractorObserver Superclass
 

Public Member Functions

virtual void SetEnabled (int)
 
void CreateDefaultRepresentation ()
 
virtual void SetProcessEvents (int)
 
void SetRepresentation (vtkDistanceRepresentation *r)
 
vtkDistanceRepresentationGetDistanceRepresentation ()
 
virtual void SetWidgetStateToStart ()
 
virtual void SetWidgetStateToManipulate ()
 
virtual int GetWidgetState ()
 
- Public Member Functions inherited from vtkAbstractWidget
void Render ()
 
virtual void SetPriority (float)
 
virtual int GetProcessEvents ()
 
virtual void ProcessEventsOn ()
 
virtual void ProcessEventsOff ()
 
vtkWidgetEventTranslatorGetEventTranslator ()
 
void SetParent (vtkAbstractWidget *parent)
 
virtual vtkAbstractWidgetGetParent ()
 
vtkWidgetRepresentationGetRepresentation ()
 
virtual void SetManagesCursor (int)
 
virtual int GetManagesCursor ()
 
virtual void ManagesCursorOn ()
 
virtual void ManagesCursorOff ()
 
vtkAbstractWidgetNewInstance () const
 
void PrintSelf (ostream &os, vtkIndent indent)
 

Static Public Member Functions

static vtkDistanceWidgetNew ()
 
- Static Public Member Functions inherited from vtkAbstractWidget
static int IsTypeOf (const char *type)
 
static vtkAbstractWidgetSafeDownCast (vtkObjectBase *o)
 

Protected Member Functions

 vtkDistanceWidget ()
 
 ~vtkDistanceWidget ()
 
void StartDistanceInteraction (int handleNum)
 
void DistanceInteraction (int handleNum)
 
void EndDistanceInteraction (int handleNum)
 
- Protected Member Functions inherited from vtkAbstractWidget
 vtkAbstractWidget ()
 
 ~vtkAbstractWidget ()
 
void SetWidgetRepresentation (vtkWidgetRepresentation *r)
 
virtual void SetCursor (int vtkNotUsed(state))
 

Static Protected Member Functions

static void AddPointAction (vtkAbstractWidget *)
 
static void MoveAction (vtkAbstractWidget *)
 
static void EndSelectAction (vtkAbstractWidget *)
 
- Static Protected Member Functions inherited from vtkAbstractWidget
static void ProcessEventsHandler (vtkObject *object, unsigned long event, void *clientdata, void *calldata)
 

Protected Attributes

int WidgetState
 
int CurrentHandle
 
vtkHandleWidgetPoint1Widget
 
vtkHandleWidgetPoint2Widget
 
vtkDistanceWidgetCallbackDistanceWidgetCallback1
 
vtkDistanceWidgetCallbackDistanceWidgetCallback2
 
- Protected Attributes inherited from vtkAbstractWidget
vtkWidgetRepresentationWidgetRep
 
int ManagesCursor
 
vtkWidgetEventTranslatorEventTranslator
 
vtkWidgetCallbackMapperCallbackMapper
 
vtkAbstractWidgetParent
 
void * CallData
 
int ProcessEvents
 

Friends

class vtkDistanceWidgetCallback
 
typedef vtkAbstractWidget Superclass
 
static int IsTypeOf (const char *type)
 
static vtkDistanceWidgetSafeDownCast (vtkObjectBase *o)
 
virtual int IsA (const char *type)
 
vtkDistanceWidgetNewInstance () const
 
void PrintSelf (ostream &os, vtkIndent indent)
 
virtual vtkObjectBase * NewInstanceInternal () const
 

Detailed Description

measure the distance between two points

The vtkDistanceWidget is used to measure the distance between two points. The two end points can be positioned independently, and when they are released, a special PlacePointEvent is invoked so that special operations may be take to reposition the point (snap to grid, etc.) The widget has two different modes of interaction: when initially defined (i.e., placing the two points) and then a manipulate mode (adjusting the position of the two points).

To use this widget, specify an instance of vtkDistanceWidget and a representation (a subclass of vtkDistanceRepresentation). The widget is implemented using two instances of vtkHandleWidget which are used to position the end points of the line. The representations for these two handle widgets are provided by the vtkDistanceRepresentation.

Event Bindings:
By default, the widget responds to the following VTK events (i.e., it watches the vtkRenderWindowInteractor for these events):
  LeftButtonPressEvent - add a point or select a handle
  MouseMoveEvent - position the second point or move a handle
  LeftButtonReleaseEvent - release the handle
Event Bindings:
Note that the event bindings described above can be changed using this class's vtkWidgetEventTranslator. This class translates VTK events into the vtkDistanceWidget's widget events:
  vtkWidgetEvent::AddPoint -- add one point; depending on the state
                              it may the first or second point added. Or,
                              if near a handle, select the handle.
  vtkWidgetEvent::Move -- move the second point or handle depending on the state.
  vtkWidgetEvent::EndSelect -- the handle manipulation process has completed.
Event Bindings:
This widget invokes the following VTK events on itself (which observers can listen for):
  vtkCommand::StartInteractionEvent (beginning to interact)
  vtkCommand::EndInteractionEvent (completing interaction)
  vtkCommand::InteractionEvent (moving after selecting something)
  vtkCommand::PlacePointEvent (after point is positioned;
                               call data includes handle id (0,1))
See Also
vtkHandleWidget
Events:
vtkCommand::DisableEvent vtkCommand::EnableEvent vtkCommand::LeftButtonPressEvent vtkCommand::EndInteractionEvent vtkCommand::PlacePointEvent vtkCommand::StartInteractionEvent vtkCommand::InteractionEvent vtkCommand::MouseMoveEvent vtkCommand::LeftButtonReleaseEvent
Examples:
vtkDistanceWidget (Examples)
Tests:
vtkDistanceWidget (Tests)

Definition at line 88 of file vtkDistanceWidget.h.

Member Typedef Documentation

Standard methods for a VTK class.

Definition at line 96 of file vtkDistanceWidget.h.

Member Enumeration Documentation

anonymous enum

Description: Enum defining the state of the widget. By default the widget is in Start mode, and expects to be interactively placed. While placing the points the widget transitions to Define state. Once placed, the widget enters the Manipulate state. BTX

Enumerator
Start 
Define 
Manipulate 

Definition at line 132 of file vtkDistanceWidget.h.

Constructor & Destructor Documentation

vtkDistanceWidget::vtkDistanceWidget ( )
protected
vtkDistanceWidget::~vtkDistanceWidget ( )
protected

Member Function Documentation

static vtkDistanceWidget* vtkDistanceWidget::New ( )
static

Instantiate this class.

static int vtkDistanceWidget::IsTypeOf ( const char *  type)
static

Standard methods for a VTK class.

virtual int vtkDistanceWidget::IsA ( const char *  type)
virtual

Standard methods for a VTK class.

Reimplemented from vtkAbstractWidget.

static vtkDistanceWidget* vtkDistanceWidget::SafeDownCast ( vtkObjectBase *  o)
static

Standard methods for a VTK class.

virtual vtkObjectBase* vtkDistanceWidget::NewInstanceInternal ( ) const
protectedvirtual

Standard methods for a VTK class.

Reimplemented from vtkAbstractWidget.

vtkDistanceWidget* vtkDistanceWidget::NewInstance ( ) const

Standard methods for a VTK class.

void vtkDistanceWidget::PrintSelf ( ostream &  os,
vtkIndent  indent 
)

Standard methods for a VTK class.

virtual void vtkDistanceWidget::SetEnabled ( int  )
virtual

The method for activating and deactivating this widget. This method must be overridden because it is a composite widget and does more than its superclasses' vtkAbstractWidget::SetEnabled() method.

Reimplemented from vtkAbstractWidget.

void vtkDistanceWidget::SetRepresentation ( vtkDistanceRepresentation r)
inline

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.

Definition at line 109 of file vtkDistanceWidget.h.

vtkDistanceRepresentation* vtkDistanceWidget::GetDistanceRepresentation ( )
inline

Return the representation as a vtkDistanceRepresentation.

Definition at line 116 of file vtkDistanceWidget.h.

void vtkDistanceWidget::CreateDefaultRepresentation ( )
virtual

Create the default widget representation if one is not set.

Implements vtkAbstractWidget.

virtual void vtkDistanceWidget::SetProcessEvents ( int  )
virtual

Methods to change the whether the widget responds to interaction. Overridden to pass the state to component widgets.

Reimplemented from vtkAbstractWidget.

virtual void vtkDistanceWidget::SetWidgetStateToStart ( )
virtual

Set the state of the widget. If the state is set to "Manipulate" then it is assumed that the widget and its representation will be initialized programmatically and is not interactively placed. Initially the widget state is set to "Start" which means nothing will appear and the user must interactively place the widget with repeated mouse selections. Set the state to "Start" if you want interactive placement. Generally state changes must be followed by a Render() for things to visually take effect.

virtual void vtkDistanceWidget::SetWidgetStateToManipulate ( )
virtual

Set the state of the widget. If the state is set to "Manipulate" then it is assumed that the widget and its representation will be initialized programmatically and is not interactively placed. Initially the widget state is set to "Start" which means nothing will appear and the user must interactively place the widget with repeated mouse selections. Set the state to "Start" if you want interactive placement. Generally state changes must be followed by a Render() for things to visually take effect.

virtual int vtkDistanceWidget::GetWidgetState ( )
inlinevirtual

Return the current widget state.

Definition at line 151 of file vtkDistanceWidget.h.

static void vtkDistanceWidget::AddPointAction ( vtkAbstractWidget )
staticprotected
static void vtkDistanceWidget::MoveAction ( vtkAbstractWidget )
staticprotected
static void vtkDistanceWidget::EndSelectAction ( vtkAbstractWidget )
staticprotected
void vtkDistanceWidget::StartDistanceInteraction ( int  handleNum)
protected
void vtkDistanceWidget::DistanceInteraction ( int  handleNum)
protected
void vtkDistanceWidget::EndDistanceInteraction ( int  handleNum)
protected

Friends And Related Function Documentation

friend class vtkDistanceWidgetCallback
friend

Definition at line 182 of file vtkDistanceWidget.h.

Member Data Documentation

int vtkDistanceWidget::WidgetState
protected

Definition at line 160 of file vtkDistanceWidget.h.

int vtkDistanceWidget::CurrentHandle
protected

Definition at line 161 of file vtkDistanceWidget.h.

vtkHandleWidget* vtkDistanceWidget::Point1Widget
protected

Definition at line 170 of file vtkDistanceWidget.h.

vtkHandleWidget* vtkDistanceWidget::Point2Widget
protected

Definition at line 171 of file vtkDistanceWidget.h.

vtkDistanceWidgetCallback* vtkDistanceWidget::DistanceWidgetCallback1
protected

Definition at line 172 of file vtkDistanceWidget.h.

vtkDistanceWidgetCallback* vtkDistanceWidget::DistanceWidgetCallback2
protected

Definition at line 173 of file vtkDistanceWidget.h.


The documentation for this class was generated from the following file: