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

abstract class for representing widget handles More...

#include <vtkHandleRepresentation.h>

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

Public Types

enum  _InteractionState {
  Outside =0, Nearby, Selecting, Translating,
  Scaling
}
 
- Public Types inherited from vtkWidgetRepresentation
typedef vtkProp Superclass
 

Public Member Functions

virtual int CheckConstraint (vtkRenderer *renderer, double pos[2])
 
virtual unsigned long GetMTime ()
 
virtual void SetDisplayPosition (double pos[3])
 
virtual void GetDisplayPosition (double pos[3])
 
virtual double * GetDisplayPosition ()
 
virtual void SetWorldPosition (double pos[3])
 
virtual void GetWorldPosition (double pos[3])
 
virtual double * GetWorldPosition ()
 
virtual void SetTolerance (int)
 
virtual int GetTolerance ()
 
virtual void SetActiveRepresentation (int)
 
virtual int GetActiveRepresentation ()
 
virtual void ActiveRepresentationOn ()
 
virtual void ActiveRepresentationOff ()
 
virtual void SetInteractionState (int)
 
virtual void SetConstrained (int)
 
virtual int GetConstrained ()
 
virtual void ConstrainedOn ()
 
virtual void ConstrainedOff ()
 
virtual void ShallowCopy (vtkProp *prop)
 
virtual void DeepCopy (vtkProp *prop)
 
virtual void SetRenderer (vtkRenderer *ren)
 
virtual void SetPointPlacer (vtkPointPlacer *)
 
virtual vtkPointPlacerGetPointPlacer ()
 
- Public Member Functions inherited from vtkWidgetRepresentation
virtual void PickingManagedOn ()
 
virtual void PickingManagedOff ()
 
virtual void SetPickingManaged (bool)
 
virtual bool GetPickingManaged ()
 
virtual vtkRenderer * GetRenderer ()
 
virtual void BuildRepresentation ()=0
 
virtual void PlaceWidget (double *vtkNotUsed(bounds[6]))
 
virtual void StartWidgetInteraction (double eventPos[2])
 
virtual void WidgetInteraction (double newEventPos[2])
 
virtual void EndWidgetInteraction (double newEventPos[2])
 
virtual int ComputeInteractionState (int X, int Y, int modify=0)
 
virtual int GetInteractionState ()
 
virtual void Highlight (int vtkNotUsed(highlightOn))
 
virtual void SetPlaceFactor (double)
 
virtual double GetPlaceFactor ()
 
virtual void SetHandleSize (double)
 
virtual double GetHandleSize ()
 
virtual int GetNeedToRender ()
 
virtual void SetNeedToRender (int)
 
virtual void NeedToRenderOn ()
 
virtual void NeedToRenderOff ()
 
virtual double * GetBounds ()
 
virtual void GetActors (vtkPropCollection *)
 
virtual void GetActors2D (vtkPropCollection *)
 
virtual void GetVolumes (vtkPropCollection *)
 
virtual void ReleaseGraphicsResources (vtkWindow *)
 
virtual int RenderOverlay (vtkViewport *vtkNotUsed(viewport))
 
virtual int RenderOpaqueGeometry (vtkViewport *vtkNotUsed(viewport))
 
virtual int RenderTranslucentPolygonalGeometry (vtkViewport *vtkNotUsed(viewport))
 
virtual int RenderVolumetricGeometry (vtkViewport *vtkNotUsed(viewport))
 
virtual int HasTranslucentPolygonalGeometry ()
 
vtkWidgetRepresentationNewInstance () const
 
void PrintSelf (ostream &os, vtkIndent indent)
 

Protected Member Functions

 vtkHandleRepresentation ()
 
 ~vtkHandleRepresentation ()
 
- Protected Member Functions inherited from vtkWidgetRepresentation
 vtkWidgetRepresentation ()
 
 ~vtkWidgetRepresentation ()
 
void AdjustBounds (double bounds[6], double newBounds[6], double center[3])
 
virtual void RegisterPickers ()
 
virtual void UnRegisterPickers ()
 
virtual void PickersModified ()
 
vtkPickingManager * GetPickingManager ()
 
double SizeHandlesRelativeToViewport (double factor, double pos[3])
 
double SizeHandlesInPixels (double factor, double pos[3])
 
vtkAssemblyPath * GetAssemblyPath (double X, double Y, double Z, vtkAbstractPropPicker *picker)
 

Protected Attributes

int Tolerance
 
int ActiveRepresentation
 
int Constrained
 
vtkCoordinate * DisplayPosition
 
vtkCoordinate * WorldPosition
 
vtkTimeStamp DisplayPositionTime
 
vtkTimeStamp WorldPositionTime
 
vtkPointPlacerPointPlacer
 
- Protected Attributes inherited from vtkWidgetRepresentation
vtkWeakPointer< vtkRenderer > Renderer
 
int InteractionState
 
double StartEventPosition [3]
 
double PlaceFactor
 
int Placed
 
double InitialBounds [6]
 
double InitialLength
 
int ValidPick
 
bool PickingManaged
 
double HandleSize
 
int NeedToRender
 
vtkTimeStamp BuildTime
 
typedef vtkWidgetRepresentation Superclass
 
static int IsTypeOf (const char *type)
 
static vtkHandleRepresentationSafeDownCast (vtkObjectBase *o)
 
virtual int IsA (const char *type)
 
vtkHandleRepresentationNewInstance () const
 
void PrintSelf (ostream &os, vtkIndent indent)
 
virtual vtkObjectBase * NewInstanceInternal () const
 

Detailed Description

abstract class for representing widget handles

This class defines an API for widget handle representations. These representations interact with vtkHandleWidget. Various representations can be used depending on the nature of the handle. The basic functionality of the handle representation is to maintain a position. The position is represented via a vtkCoordinate, meaning that the position can be easily obtained in a variety of coordinate systems.

Optional features for this representation include an active mode (the widget appears only when the mouse pointer is close to it). The active distance is expressed in pixels and represents a circle in display space.

The class may be subclassed so that alternative representations can be created. The class defines an API and a default implementation that the vtkHandleWidget interacts with to render itself in the scene.

Warning
The separation of the widget event handling and representation enables users and developers to create new appearances for the widget. It also facilitates parallel processing, where the client application handles events, and remote representations of the widget are slaves to the client (and do not handle events).
See Also
vtkRectilinearWipeWidget vtkWidgetRepresentation vtkAbstractWidget
Tests:
vtkHandleRepresentation (Tests)

Definition at line 57 of file vtkHandleRepresentation.h.

Member Typedef Documentation

Standard methods for instances of this class.

Definition at line 62 of file vtkHandleRepresentation.h.

Member Enumeration Documentation

Enumerator
Outside 
Nearby 
Selecting 
Translating 
Scaling 

Definition at line 104 of file vtkHandleRepresentation.h.

Constructor & Destructor Documentation

vtkHandleRepresentation::vtkHandleRepresentation ( )
protected
vtkHandleRepresentation::~vtkHandleRepresentation ( )
protected

Member Function Documentation

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

Standard methods for instances of this class.

virtual int vtkHandleRepresentation::IsA ( const char *  type)
virtual
static vtkHandleRepresentation* vtkHandleRepresentation::SafeDownCast ( vtkObjectBase *  o)
static

Standard methods for instances of this class.

virtual vtkObjectBase* vtkHandleRepresentation::NewInstanceInternal ( ) const
protectedvirtual
vtkHandleRepresentation* vtkHandleRepresentation::NewInstance ( ) const

Standard methods for instances of this class.

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

Standard methods for instances of this class.

virtual void vtkHandleRepresentation::SetDisplayPosition ( double  pos[3])
virtual

Handles usually have their coordinates set in display coordinates (generally by an associated widget) and internally maintain the position in world coordinates. (Using world coordinates insures that handles are rendered in the right position when the camera view changes.) These methods are often subclassed because special constraint operations can be used to control the actual positioning.

Reimplemented in vtkConstrainedPointHandleRepresentation, vtkPointHandleRepresentation2D, vtkAbstractPolygonalHandleRepresentation3D, vtkSphereHandleRepresentation, and vtkPointHandleRepresentation3D.

virtual void vtkHandleRepresentation::GetDisplayPosition ( double  pos[3])
virtual

Handles usually have their coordinates set in display coordinates (generally by an associated widget) and internally maintain the position in world coordinates. (Using world coordinates insures that handles are rendered in the right position when the camera view changes.) These methods are often subclassed because special constraint operations can be used to control the actual positioning.

virtual double* vtkHandleRepresentation::GetDisplayPosition ( )
virtual

Handles usually have their coordinates set in display coordinates (generally by an associated widget) and internally maintain the position in world coordinates. (Using world coordinates insures that handles are rendered in the right position when the camera view changes.) These methods are often subclassed because special constraint operations can be used to control the actual positioning.

virtual void vtkHandleRepresentation::SetWorldPosition ( double  pos[3])
virtual

Handles usually have their coordinates set in display coordinates (generally by an associated widget) and internally maintain the position in world coordinates. (Using world coordinates insures that handles are rendered in the right position when the camera view changes.) These methods are often subclassed because special constraint operations can be used to control the actual positioning.

Reimplemented in vtkAbstractPolygonalHandleRepresentation3D, vtkSphereHandleRepresentation, vtkPointHandleRepresentation3D, and vtkPolygonalHandleRepresentation3D.

virtual void vtkHandleRepresentation::GetWorldPosition ( double  pos[3])
virtual

Handles usually have their coordinates set in display coordinates (generally by an associated widget) and internally maintain the position in world coordinates. (Using world coordinates insures that handles are rendered in the right position when the camera view changes.) These methods are often subclassed because special constraint operations can be used to control the actual positioning.

virtual double* vtkHandleRepresentation::GetWorldPosition ( )
virtual

Handles usually have their coordinates set in display coordinates (generally by an associated widget) and internally maintain the position in world coordinates. (Using world coordinates insures that handles are rendered in the right position when the camera view changes.) These methods are often subclassed because special constraint operations can be used to control the actual positioning.

virtual void vtkHandleRepresentation::SetTolerance ( int  )
virtual

The tolerance representing the distance to the widget (in pixels) in which the cursor is considered near enough to the widget to be active.

virtual int vtkHandleRepresentation::GetTolerance ( )
virtual

The tolerance representing the distance to the widget (in pixels) in which the cursor is considered near enough to the widget to be active.

virtual void vtkHandleRepresentation::SetActiveRepresentation ( int  )
virtual

Flag controls whether the widget becomes visible when the mouse pointer moves close to it (i.e., the widget becomes active). By default, ActiveRepresentation is off and the representation is always visible.

virtual int vtkHandleRepresentation::GetActiveRepresentation ( )
virtual

Flag controls whether the widget becomes visible when the mouse pointer moves close to it (i.e., the widget becomes active). By default, ActiveRepresentation is off and the representation is always visible.

virtual void vtkHandleRepresentation::ActiveRepresentationOn ( )
virtual

Flag controls whether the widget becomes visible when the mouse pointer moves close to it (i.e., the widget becomes active). By default, ActiveRepresentation is off and the representation is always visible.

virtual void vtkHandleRepresentation::ActiveRepresentationOff ( )
virtual

Flag controls whether the widget becomes visible when the mouse pointer moves close to it (i.e., the widget becomes active). By default, ActiveRepresentation is off and the representation is always visible.

virtual void vtkHandleRepresentation::SetInteractionState ( int  )
virtual

The interaction state may be set from a widget (e.g., HandleWidget) or other object. This controls how the interaction with the widget proceeds. Normally this method is used as part of a handshaking processwith the widget: First ComputeInteractionState() is invoked that returns a state based on geometric considerations (i.e., cursor near a widget feature), then based on events, the widget may modify this further.

virtual void vtkHandleRepresentation::SetConstrained ( int  )
virtual

Specify whether any motions (such as scale, translate, etc.) are constrained in some way (along an axis, etc.) Widgets can use this to control the resulting motion.

virtual int vtkHandleRepresentation::GetConstrained ( )
virtual

Specify whether any motions (such as scale, translate, etc.) are constrained in some way (along an axis, etc.) Widgets can use this to control the resulting motion.

virtual void vtkHandleRepresentation::ConstrainedOn ( )
virtual

Specify whether any motions (such as scale, translate, etc.) are constrained in some way (along an axis, etc.) Widgets can use this to control the resulting motion.

virtual void vtkHandleRepresentation::ConstrainedOff ( )
virtual

Specify whether any motions (such as scale, translate, etc.) are constrained in some way (along an axis, etc.) Widgets can use this to control the resulting motion.

virtual int vtkHandleRepresentation::CheckConstraint ( vtkRenderer *  renderer,
double  pos[2] 
)
virtual

Method has to be overridden in the subclasses which has constraints on placing the handle (Ex. vtkConstrainedPointHandleRepresentation). It should return 1 if the position is within the constraint, else it should return 0. By default it returns 1.

Reimplemented in vtkConstrainedPointHandleRepresentation.

virtual void vtkHandleRepresentation::ShallowCopy ( vtkProp *  prop)
virtual
virtual void vtkHandleRepresentation::DeepCopy ( vtkProp *  prop)
virtual
virtual void vtkHandleRepresentation::SetRenderer ( vtkRenderer *  ren)
virtual

Methods to make this class properly act like a vtkWidgetRepresentation.

Reimplemented from vtkWidgetRepresentation.

Reimplemented in vtkConstrainedPointHandleRepresentation.

virtual unsigned long vtkHandleRepresentation::GetMTime ( )
virtual

Overload the superclasses' GetMTime() because the internal vtkCoordinates are used to keep the state of the representation.

virtual void vtkHandleRepresentation::SetPointPlacer ( vtkPointPlacer )
virtual

Set/Get the point placer. Point placers can be used to dictate constraints on the placement of handles. As an example, see vtkBoundedPlanePointPlacer (constrains the placement of handles to a set of bounded planes) vtkFocalPlanePointPlacer (constrains placement on the focal plane) etc. The default point placer is vtkPointPlacer (which does not apply any constraints, so the handles are free to move anywhere).

Reimplemented in vtkPointHandleRepresentation2D.

virtual vtkPointPlacer* vtkHandleRepresentation::GetPointPlacer ( )
virtual

Set/Get the point placer. Point placers can be used to dictate constraints on the placement of handles. As an example, see vtkBoundedPlanePointPlacer (constrains the placement of handles to a set of bounded planes) vtkFocalPlanePointPlacer (constrains placement on the focal plane) etc. The default point placer is vtkPointPlacer (which does not apply any constraints, so the handles are free to move anywhere).

Member Data Documentation

int vtkHandleRepresentation::Tolerance
protected

Definition at line 161 of file vtkHandleRepresentation.h.

int vtkHandleRepresentation::ActiveRepresentation
protected

Definition at line 162 of file vtkHandleRepresentation.h.

int vtkHandleRepresentation::Constrained
protected

Definition at line 163 of file vtkHandleRepresentation.h.

vtkCoordinate* vtkHandleRepresentation::DisplayPosition
protected

Definition at line 169 of file vtkHandleRepresentation.h.

vtkCoordinate* vtkHandleRepresentation::WorldPosition
protected

Definition at line 170 of file vtkHandleRepresentation.h.

vtkTimeStamp vtkHandleRepresentation::DisplayPositionTime
protected

Definition at line 173 of file vtkHandleRepresentation.h.

vtkTimeStamp vtkHandleRepresentation::WorldPositionTime
protected

Definition at line 174 of file vtkHandleRepresentation.h.

vtkPointPlacer* vtkHandleRepresentation::PointPlacer
protected

Definition at line 177 of file vtkHandleRepresentation.h.


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