|
virtual vtkTypeBool | 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) override |
| 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]) |
|
void | OnMouseMove () override |
| Concrete implementation of event bindings. More...
|
|
void | OnLeftButtonDown () override |
|
void | OnLeftButtonUp () override |
|
virtual void | OnLeftButtonMove () |
|
void | OnTimer () override |
| OnTimer calls RotateCamera, RotateActor etc which should be overridden by style subclasses. More...
|
|
vtkInteractorStyle * | NewInstance () const |
|
void | PrintSelf (ostream &os, vtkIndent indent) override |
| Methods invoked by print to print information about the object including superclasses. More...
|
|
void | SetInteractor (vtkRenderWindowInteractor *interactor) override |
| Set/Get the Interactor wrapper being controlled by this object. More...
|
|
void | SetEnabled (int) override |
| Turn on/off this interactor. More...
|
|
virtual void | SetAutoAdjustCameraClippingRange (vtkTypeBool) |
| If AutoAdjustCameraClippingRange is on, then before each render the camera clipping range will be adjusted to "fit" the whole scene. More...
|
|
virtual vtkTypeBool | 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 vtkTypeBool | GetUseTimers () |
| Set/Get timer hint. More...
|
|
virtual void | SetUseTimers (vtkTypeBool) |
|
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 (vtkTypeBool) |
| Does ProcessEvents handle observers on this class or not. More...
|
|
virtual vtkTypeBool | GetHandleObservers () |
|
virtual void | HandleObserversOn () |
|
virtual void | HandleObserversOff () |
|
virtual void | OnMiddleButtonDown () |
|
virtual void | OnMiddleButtonUp () |
|
virtual void | OnRightButtonDown () |
|
virtual void | OnRightButtonUp () |
|
virtual void | OnMouseWheelForward () |
|
virtual void | OnMouseWheelBackward () |
|
virtual void | OnFourthButtonDown () |
|
virtual void | OnFourthButtonUp () |
|
virtual void | OnFifthButtonDown () |
|
virtual void | OnFifthButtonUp () |
|
virtual void | OnMove3D (vtkEventData *) |
| Generic 3D event bindings can be overridden in subclasses. More...
|
|
virtual void | OnButton3D (vtkEventData *) |
|
void | OnChar () override |
| 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 | 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...
|
|
vtkInteractorObserver * | NewInstance () const |
|
int | GetEnabled () |
|
void | EnabledOn () |
|
void | EnabledOff () |
|
void | On () |
|
void | Off () |
|
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 managed) |
|
virtual bool | GetPickingManaged () |
|
virtual void | SetKeyPressActivation (vtkTypeBool) |
| Enable/Disable of the use of a keypress to turn on and off the interactor observer. More...
|
|
virtual vtkTypeBool | 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 *) |
|
void | GrabFocus (vtkCommand *mouseEvents, vtkCommand *keypressEvents=nullptr) |
| 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...
|
|
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 *) |
|
vtkTypeBool | HasObserver (unsigned long event, vtkCommand *) |
|
vtkTypeBool | HasObserver (const char *event, vtkCommand *) |
|
void | RemoveObserver (unsigned long tag) |
|
void | RemoveObservers (unsigned long event) |
|
void | RemoveObservers (const char *event) |
|
void | RemoveAllObservers () |
|
vtkTypeBool | HasObserver (unsigned long event) |
|
vtkTypeBool | 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 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 | 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...
|
|
|
static vtkInteractorStyleUnicam * | New () |
|
static vtkTypeBool | IsTypeOf (const char *type) |
|
static vtkInteractorStyleUnicam * | SafeDownCast (vtkObjectBase *o) |
|
static vtkInteractorStyle * | New () |
| This class must be supplied with a vtkRenderWindowInteractor wrapper or parent. More...
|
|
static vtkTypeBool | IsTypeOf (const char *type) |
|
static vtkInteractorStyle * | SafeDownCast (vtkObjectBase *o) |
|
static vtkTypeBool | IsTypeOf (const char *type) |
|
static vtkInteractorObserver * | SafeDownCast (vtkObjectBase *o) |
|
static void | ComputeDisplayToWorld (vtkRenderer *ren, double x, double y, double z, double worldPt[4]) |
| Convenience methods for outside classes. More...
|
|
static void | ComputeWorldToDisplay (vtkRenderer *ren, double x, double y, double z, double displayPt[3]) |
|
static vtkObject * | New () |
| Create an object with Debug turned off, modified time initialized to zero, and reference counting on. More...
|
|
static void | BreakOnError () |
| This method is called when vtkErrorMacro executes. More...
|
|
static void | SetGlobalWarningDisplay (int val) |
| This is a global flag that controls whether any debug, warning or error messages are displayed. More...
|
|
static void | GlobalWarningDisplayOn () |
|
static void | GlobalWarningDisplayOff () |
|
static int | GetGlobalWarningDisplay () |
|
static vtkTypeBool | IsTypeOf (const char *name) |
| Return 1 if this class type is the same type of (or a subclass of) the named class. More...
|
|
static vtkObjectBase * | New () |
| Create an object with Debug turned off, modified time initialized to zero, and reference counting on. More...
|
|
|
virtual vtkObjectBase * | NewInstanceInternal () const |
|
| vtkInteractorStyleUnicam () |
|
| ~vtkInteractorStyleUnicam () override |
|
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 () |
|
| vtkInteractorStyle () |
|
| ~vtkInteractorStyle () override |
|
| vtkInteractorObserver () |
|
| ~vtkInteractorObserver () override |
|
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...
|
|
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=nullptr) |
| These methods allow a command to exclusively grab all events. More...
|
|
void | InternalReleaseFocus () |
|
| vtkObjectBase () |
|
virtual | ~vtkObjectBase () |
|
virtual void | CollectRevisions (ostream &) |
|
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.
- 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 108 of file vtkInteractorStyleUnicam.h.