|
virtual int | IsA (const char *type) |
| Return 1 if this class is the same type of (or a subclass of) the named class. More...
|
|
vtkInteractorStyleUnicam * | NewInstance () const |
|
void | PrintSelf (ostream &os, vtkIndent indent) |
| Methods invoked by print to print information about the object including superclasses. More...
|
|
void | SetWorldUpVector (double a[3]) |
|
void | SetWorldUpVector (double x, double y, double z) |
|
virtual double * | GetWorldUpVector () |
|
virtual void | GetWorldUpVector (double data[3]) |
|
virtual void | OnMouseMove () |
| Concrete implementation of event bindings. More...
|
|
virtual void | OnLeftButtonDown () |
|
virtual void | OnLeftButtonUp () |
|
virtual void | OnLeftButtonMove () |
|
virtual void | OnTimer () |
| OnTimer calls RotateCamera, RotateActor etc which should be overridden by style subclasses. More...
|
|
virtual int | IsA (const char *type) |
| Return 1 if this class is the same type of (or a subclass of) the named class. More...
|
|
vtkInteractorStyle * | NewInstance () const |
|
void | PrintSelf (ostream &os, vtkIndent indent) |
| Methods invoked by print to print information about the object including superclasses. More...
|
|
virtual void | SetInteractor (vtkRenderWindowInteractor *interactor) |
| Set/Get the Interactor wrapper being controlled by this object. More...
|
|
virtual void | SetEnabled (int) |
| Turn on/off this interactor. More...
|
|
virtual void | SetAutoAdjustCameraClippingRange (int) |
| If AutoAdjustCameraClippingRange is on, then before each render the camera clipping range will be adjusted to "fit" the whole scene. More...
|
|
virtual int | GetAutoAdjustCameraClippingRange () |
|
virtual void | AutoAdjustCameraClippingRangeOn () |
|
virtual void | AutoAdjustCameraClippingRangeOff () |
|
void | FindPokedRenderer (int, int) |
| When an event occurs, we must determine which Renderer the event occurred within, since one RenderWindow may contain multiple renderers. More...
|
|
virtual int | GetState () |
| Some useful information for interaction. More...
|
|
virtual int | GetUseTimers () |
| Set/Get timer hint. More...
|
|
virtual void | SetUseTimers (int) |
|
virtual void | UseTimersOn () |
|
virtual void | UseTimersOff () |
|
virtual void | SetTimerDuration (unsigned long) |
| If using timers, specify the default timer interval (in milliseconds). More...
|
|
virtual unsigned long | GetTimerDuration () |
|
virtual void | SetHandleObservers (int) |
| Does ProcessEvents handle observers on this class or not. More...
|
|
virtual int | GetHandleObservers () |
|
virtual void | HandleObserversOn () |
|
virtual void | HandleObserversOff () |
|
virtual void | OnMouseMove () |
| Generic event bindings can be overridden in subclasses. More...
|
|
virtual void | OnLeftButtonDown () |
|
virtual void | OnLeftButtonUp () |
|
virtual void | OnMiddleButtonDown () |
|
virtual void | OnMiddleButtonUp () |
|
virtual void | OnRightButtonDown () |
|
virtual void | OnRightButtonUp () |
|
virtual void | OnMouseWheelForward () |
|
virtual void | OnMouseWheelBackward () |
|
virtual void | OnChar () |
| OnChar is triggered when an ASCII key is pressed. More...
|
|
virtual void | OnKeyDown () |
|
virtual void | OnKeyUp () |
|
virtual void | OnKeyPress () |
|
virtual void | OnKeyRelease () |
|
virtual void | OnExpose () |
| These are more esoteric events, but are useful in some cases. More...
|
|
virtual void | OnConfigure () |
|
virtual void | OnEnter () |
|
virtual void | OnLeave () |
|
virtual void | OnTimer () |
| OnTimer calls Rotate, Rotate etc which should be overridden by style subclasses. More...
|
|
virtual void | Rotate () |
| These methods for the different interactions in different modes are overridden in subclasses to perform the correct motion. More...
|
|
virtual void | Spin () |
|
virtual void | Pan () |
|
virtual void | Dolly () |
|
virtual void | Zoom () |
|
virtual void | UniformScale () |
|
virtual void | OnPinch () |
| gesture based events More...
|
|
virtual void | OnRotate () |
|
virtual void | OnPan () |
|
virtual void | OnTap () |
|
virtual void | OnLongTap () |
|
virtual void | OnSwipe () |
|
virtual void | StartState (int newstate) |
| utility routines used by state changes More...
|
|
virtual void | StopState () |
|
virtual void | StartAnimate () |
| Interaction mode entry points used internally. More...
|
|
virtual void | StopAnimate () |
|
virtual void | StartRotate () |
|
virtual void | EndRotate () |
|
virtual void | StartZoom () |
|
virtual void | EndZoom () |
|
virtual void | StartPan () |
|
virtual void | EndPan () |
|
virtual void | StartSpin () |
|
virtual void | EndSpin () |
|
virtual void | StartDolly () |
|
virtual void | EndDolly () |
|
virtual void | StartUniformScale () |
|
virtual void | EndUniformScale () |
|
virtual void | StartTimer () |
|
virtual void | EndTimer () |
|
virtual void | StartTwoPointer () |
|
virtual void | EndTwoPointer () |
|
virtual void | HighlightProp (vtkProp *prop) |
| When picking successfully selects an actor, this method highlights the picked prop appropriately. More...
|
|
virtual void | HighlightActor2D (vtkActor2D *actor2D) |
|
virtual void | HighlightProp3D (vtkProp3D *prop3D) |
|
virtual void | SetPickColor (double, double, double) |
| Set/Get the pick color (used by default to color vtkActor2D's). More...
|
|
virtual void | SetPickColor (double[3]) |
|
virtual double * | GetPickColor () |
|
virtual void | GetPickColor (double data[3]) |
|
virtual void | SetMouseWheelMotionFactor (double) |
| Set/Get the mouse wheel motion factor. More...
|
|
virtual double | GetMouseWheelMotionFactor () |
|
virtual vtkTDxInteractorStyle * | GetTDxStyle () |
| 3Dconnexion device interactor style. More...
|
|
virtual void | SetTDxStyle (vtkTDxInteractorStyle *tdxStyle) |
|
void | DelegateTDxEvent (unsigned long event, void *calldata) |
| Called by the callback to process 3DConnexion device events. More...
|
|
virtual int | IsA (const char *type) |
| Return 1 if this class is the same type of (or a subclass of) the named class. More...
|
|
vtkInteractorObserver * | NewInstance () const |
|
void | PrintSelf (ostream &os, vtkIndent indent) |
| Methods invoked by print to print information about the object including superclasses. More...
|
|
virtual void | SetEnabled (int) |
| Methods for turning the interactor observer on and off, and determining its state. More...
|
|
int | GetEnabled () |
|
void | EnabledOn () |
|
void | EnabledOff () |
|
void | On () |
|
void | Off () |
|
virtual void | SetInteractor (vtkRenderWindowInteractor *iren) |
| This method is used to associate the widget with the render window interactor. More...
|
|
virtual vtkRenderWindowInteractor * | GetInteractor () |
|
virtual void | SetPriority (float) |
| Set/Get the priority at which events are processed. More...
|
|
virtual float | GetPriority () |
|
virtual void | PickingManagedOn () |
| Enable/Disable the use of a manager to process the picking. More...
|
|
virtual void | PickingManagedOff () |
|
virtual void | SetPickingManaged (bool) |
|
virtual bool | GetPickingManaged () |
|
virtual void | SetKeyPressActivation (int) |
| Enable/Disable of the use of a keypress to turn on and off the interactor observer. More...
|
|
virtual int | GetKeyPressActivation () |
|
virtual void | KeyPressActivationOn () |
|
virtual void | KeyPressActivationOff () |
|
virtual void | SetKeyPressActivationValue (char) |
| Specify which key press value to use to activate the interactor observer (if key press activation is enabled). More...
|
|
virtual char | GetKeyPressActivationValue () |
|
virtual vtkRenderer * | GetDefaultRenderer () |
| Set/Get the default renderer to use when activating the interactor observer. More...
|
|
virtual void | SetDefaultRenderer (vtkRenderer *) |
|
virtual vtkRenderer * | GetCurrentRenderer () |
| Set/Get the current renderer. More...
|
|
virtual void | SetCurrentRenderer (vtkRenderer *) |
|
virtual void | OnChar () |
| Sets up the keypress-i event. More...
|
|
void | GrabFocus (vtkCommand *mouseEvents, vtkCommand *keypressEvents=NULL) |
| These methods enable an interactor observer to exclusively grab all events invoked by its associated vtkRenderWindowInteractor. More...
|
|
void | ReleaseFocus () |
|
| vtkBaseTypeMacro (vtkObject, vtkObjectBase) |
|
virtual void | DebugOn () |
| Turn debugging output on. More...
|
|
virtual void | DebugOff () |
| Turn debugging output off. More...
|
|
bool | GetDebug () |
| Get the value of the debug flag. More...
|
|
void | SetDebug (bool debugFlag) |
| Set the value of the debug flag. More...
|
|
virtual void | Modified () |
| Update the modification time for this object. More...
|
|
virtual vtkMTimeType | GetMTime () |
| Return this object's modified time. More...
|
|
void | PrintSelf (ostream &os, vtkIndent indent) override |
| Methods invoked by print to print information about the object including superclasses. More...
|
|
unsigned long | AddObserver (unsigned long event, vtkCommand *, float priority=0.0f) |
| Allow people to add/remove/invoke observers (callbacks) to any VTK object. More...
|
|
unsigned long | AddObserver (const char *event, vtkCommand *, float priority=0.0f) |
|
vtkCommand * | GetCommand (unsigned long tag) |
|
void | RemoveObserver (vtkCommand *) |
|
void | RemoveObservers (unsigned long event, vtkCommand *) |
|
void | RemoveObservers (const char *event, vtkCommand *) |
|
int | HasObserver (unsigned long event, vtkCommand *) |
|
int | HasObserver (const char *event, vtkCommand *) |
|
void | RemoveObserver (unsigned long tag) |
|
void | RemoveObservers (unsigned long event) |
|
void | RemoveObservers (const char *event) |
|
void | RemoveAllObservers () |
|
int | HasObserver (unsigned long event) |
|
int | HasObserver (const char *event) |
|
template<class U , class T > |
unsigned long | AddObserver (unsigned long event, U observer, void(T::*callback)(), float priority=0.0f) |
| Overloads to AddObserver that allow developers to add class member functions as callbacks for events. More...
|
|
template<class U , class T > |
unsigned long | AddObserver (unsigned long event, U observer, void(T::*callback)(vtkObject *, unsigned long, void *), float priority=0.0f) |
|
template<class U , class T > |
unsigned long | AddObserver (unsigned long event, U observer, bool(T::*callback)(vtkObject *, unsigned long, void *), float priority=0.0f) |
| Allow user to set the AbortFlagOn() with the return value of the callback method. More...
|
|
int | InvokeEvent (unsigned long event, void *callData) |
| This method invokes an event and return whether the event was aborted or not. More...
|
|
int | InvokeEvent (const char *event, void *callData) |
|
int | InvokeEvent (unsigned long event) |
|
int | InvokeEvent (const char *event) |
|
const char * | GetClassName () const |
| Return the class name as a string. More...
|
|
virtual vtkTypeBool | IsA (const char *name) |
| Return 1 if this class is the same type of (or a subclass of) the named class. More...
|
|
virtual void | Delete () |
| Delete a VTK object. More...
|
|
virtual void | FastDelete () |
| Delete a reference to this object. More...
|
|
void | InitializeObjectBase () |
|
void | Print (ostream &os) |
| Print an object to an ostream. More...
|
|
virtual void | PrintSelf (ostream &os, vtkIndent indent) |
| Methods invoked by print to print information about the object including superclasses. More...
|
|
virtual void | PrintHeader (ostream &os, vtkIndent indent) |
|
virtual void | PrintTrailer (ostream &os, vtkIndent indent) |
|
virtual void | Register (vtkObjectBase *o) |
| Increase the reference count (mark as used by another object). More...
|
|
virtual void | UnRegister (vtkObjectBase *o) |
| Decrease the reference count (release by another object). More...
|
|
int | GetReferenceCount () |
| Return the current reference count of this object. More...
|
|
void | SetReferenceCount (int) |
| Sets the reference count. More...
|
|
void | PrintRevisions (ostream &) |
| Legacy. More...
|
|
|
virtual vtkObjectBase * | NewInstanceInternal () const |
|
| vtkInteractorStyleUnicam () |
|
virtual | ~vtkInteractorStyleUnicam () |
|
void | ChooseXY (int X, int Y) |
|
void | RotateXY (int X, int Y) |
|
void | DollyXY (int X, int Y) |
|
void | PanXY (int X, int Y) |
|
void | MyTranslateCamera (double v[3]) |
|
void | MyRotateCamera (double cx, double cy, double cz, double ax, double ay, double az, double angle) |
|
void | GetRightVandUpV (double *p, vtkCamera *cam, double *rightV, double *upV) |
|
void | NormalizeMouseXY (int X, int Y, double *NX, double *NY) |
|
double | WindowAspect () |
|
virtual vtkObjectBase * | NewInstanceInternal () const |
|
| vtkInteractorStyle () |
|
| ~vtkInteractorStyle () |
|
virtual vtkObjectBase * | NewInstanceInternal () const |
|
| vtkInteractorObserver () |
|
| ~vtkInteractorObserver () |
|
virtual void | StartInteraction () |
| Utility routines used to start and end interaction. More...
|
|
virtual void | EndInteraction () |
|
void | ComputeDisplayToWorld (double x, double y, double z, double worldPt[4]) |
| Helper method for subclasses. More...
|
|
void | ComputeWorldToDisplay (double x, double y, double z, double displayPt[3]) |
|
virtual void | RegisterPickers () |
| Register internal Pickers in the Picking Manager. More...
|
|
void | UnRegisterPickers () |
| Unregister internal pickers from the Picking Manager. More...
|
|
virtual void | PickersModified () |
| Update the pickers registered in the Picking Manager when pickers are modified. More...
|
|
vtkPickingManager * | GetPickingManager () |
| Return the picking manager associated on the context on which the observer currently belong. More...
|
|
vtkAssemblyPath * | GetAssemblyPath (double X, double Y, double Z, vtkAbstractPropPicker *picker) |
| Proceed to a pick, whether through the PickingManager if the picking is managed or directly using the picker, and return the assembly path. More...
|
|
int | RequestCursorShape (int requestedShape) |
|
| vtkObject () |
|
| ~vtkObject () override |
|
void | RegisterInternal (vtkObjectBase *, vtkTypeBool check) override |
|
void | UnRegisterInternal (vtkObjectBase *, vtkTypeBool check) override |
|
void | InternalGrabFocus (vtkCommand *mouseEvents, vtkCommand *keypressEvents=NULL) |
| These methods allow a command to exclusively grab all events. More...
|
|
void | InternalReleaseFocus () |
|
| vtkObjectBase () |
|
virtual | ~vtkObjectBase () |
|
virtual void | CollectRevisions (ostream &) |
|
virtual void | RegisterInternal (vtkObjectBase *, vtkTypeBool check) |
|
virtual void | UnRegisterInternal (vtkObjectBase *, vtkTypeBool check) |
|
virtual void | ReportReferences (vtkGarbageCollector *) |
|
| vtkObjectBase (const vtkObjectBase &) |
|
void | operator= (const vtkObjectBase &) |
|
provides Unicam navigation style
UniCam is a camera interactor. Here, just the primary features of the UniCam technique are implemented. UniCam requires just one mouse button and supports context sensitive dollying, panning, and rotation. (In this implementation, it uses the right mouse button, leaving the middle and left available for other functions.) For more information, see the paper at:
ftp://ftp.cs.brown.edu/pub/papers/graphics/research/unicam.pdf
The following is a brief description of the UniCam Camera Controls. You can perform 3 operations on the camera: rotate, pan, and dolly the camera. All operations are reached through the right mouse button & mouse movements.
IMPORTANT: UniCam assumes there is an axis that makes sense as a "up" vector for the world. By default, this axis is defined to be the vector <0,0,1>. You can set it explicitly for the data you are viewing with the 'SetWorldUpVector(..)' method in C++, or similarly in Tcl/Tk (or other interpreted languages).
- ROTATE:
Position the cursor over the point you wish to rotate around and press and release the left mouse button. A 'focus dot' appears indicating the point that will be the center of rotation. To rotate, press and hold the left mouse button and drag the mouse.. release the button to complete the rotation.
Rotations can be done without placing a focus dot first by moving the mouse cursor to within 10% of the window border & pressing and holding the left button followed by dragging the mouse. The last focus dot position will be re-used.
- PAN:
Click and hold the left mouse button, and initially move the mouse left or right. The point under the initial pick will pick correlate w/ the mouse tip– (i.e., direct manipulation).
- DOLLY (+ PAN):
Click and hold the left mouse button, and initially move the mouse up or down. Moving the mouse down will dolly towards the picked point, and moving the mouse up will dolly away from it. Dollying occurs relative to the picked point which simplifies the task of dollying towards a region of interest. Left and right mouse movements will pan the camera left and right.
- Warning
- (NOTE: This implementation of Unicam assumes a perspective camera. It could be modified relatively easily to also support an orthographic projection.)
Definition at line 109 of file vtkInteractorStyleUnicam.h.