Open CASCADE Technology
7.5.0
|
Auxiliary structure for handling viewer events between GUI and Rendering threads. More...
#include <AIS_ViewController.hxx>
Public Member Functions | |
AIS_ViewController () | |
Empty constructor. More... | |
virtual | ~AIS_ViewController () |
Destructor. More... | |
const AIS_ViewInputBuffer & | InputBuffer (AIS_ViewInputBufferType theType) const |
Return input buffer. More... | |
AIS_ViewInputBuffer & | ChangeInputBuffer (AIS_ViewInputBufferType theType) |
Return input buffer. More... | |
const Handle< AIS_AnimationCamera > & | ViewAnimation () const |
Return view animation; empty (but not NULL) animation by default. More... | |
void | SetViewAnimation (const Handle< AIS_AnimationCamera > &theAnimation) |
Set view animation to be handled within handleViewRedraw(). More... | |
void | AbortViewAnimation () |
Interrupt active view animation. More... | |
global parameters | |
AIS_RotationMode | RotationMode () const |
Return camera rotation mode, AIS_RotationMode_BndBoxActive by default. More... | |
void | SetRotationMode (AIS_RotationMode theMode) |
Set camera rotation mode. More... | |
AIS_NavigationMode | NavigationMode () const |
Return camera navigation mode; AIS_NavigationMode_Orbit by default. More... | |
void | SetNavigationMode (AIS_NavigationMode theMode) |
Set camera navigation mode. More... | |
float | MouseAcceleration () const |
Return mouse input acceleration ratio in First Person mode; 1.0 by default. More... | |
void | SetMouseAcceleration (float theRatio) |
Set mouse input acceleration ratio. More... | |
float | OrbitAcceleration () const |
Return orbit rotation acceleration ratio; 1.0 by default. More... | |
void | SetOrbitAcceleration (float theRatio) |
Set orbit rotation acceleration ratio. More... | |
bool | ToShowPanAnchorPoint () const |
Return TRUE if panning anchor point within perspective projection should be displayed in 3D Viewer; TRUE by default. More... | |
void | SetShowPanAnchorPoint (bool theToShow) |
Set if panning anchor point within perspective projection should be displayed in 3D Viewer. More... | |
bool | ToShowRotateCenter () const |
Return TRUE if rotation point should be displayed in 3D Viewer; TRUE by default. More... | |
void | SetShowRotateCenter (bool theToShow) |
Set if rotation point should be displayed in 3D Viewer. More... | |
bool | ToLockOrbitZUp () const |
Return TRUE if camera up orientation within AIS_NavigationMode_Orbit rotation mode should be forced Z up; FALSE by default. More... | |
void | SetLockOrbitZUp (bool theToForceUp) |
Set if camera up orientation within AIS_NavigationMode_Orbit rotation mode should be forced Z up. More... | |
bool | ToAllowTouchZRotation () const |
Return TRUE if z-rotation via two-touches gesture is enabled; FALSE by default. More... | |
void | SetAllowTouchZRotation (bool theToEnable) |
Set if z-rotation via two-touches gesture is enabled. More... | |
bool | ToAllowRotation () const |
Return TRUE if camera rotation is allowed; TRUE by default. More... | |
void | SetAllowRotation (bool theToEnable) |
Set if camera rotation is allowed. More... | |
bool | ToAllowPanning () const |
Return TRUE if panning is allowed; TRUE by default. More... | |
void | SetAllowPanning (bool theToEnable) |
Set if panning is allowed. More... | |
bool | ToAllowZooming () const |
Return TRUE if zooming is allowed; TRUE by default. More... | |
void | SetAllowZooming (bool theToEnable) |
Set if zooming is allowed. More... | |
bool | ToAllowZFocus () const |
Return TRUE if ZFocus change is allowed; TRUE by default. More... | |
void | SetAllowZFocus (bool theToEnable) |
Set if ZFocus change is allowed. More... | |
bool | ToAllowHighlight () const |
Return TRUE if dynamic highlight on mouse move is allowed; TRUE by default. More... | |
void | SetAllowHighlight (bool theToEnable) |
Set if dragging object is allowed. More... | |
bool | ToAllowDragging () const |
Return TRUE if dragging object is allowed; TRUE by default. More... | |
void | SetAllowDragging (bool theToEnable) |
Set if dynamic highlight on mouse move is allowed. More... | |
bool | ToStickToRayOnZoom () const |
Return TRUE if picked point should be projected to picking ray on zooming at point; TRUE by default. More... | |
void | SetStickToRayOnZoom (bool theToEnable) |
Set if picked point should be projected to picking ray on zooming at point. More... | |
bool | ToStickToRayOnRotation () const |
Return TRUE if picked point should be projected to picking ray on rotating around point; TRUE by default. More... | |
void | SetStickToRayOnRotation (bool theToEnable) |
Set if picked point should be projected to picking ray on rotating around point. More... | |
bool | ToInvertPitch () const |
Return TRUE if pitch direction should be inverted while processing Aspect_VKey_NavLookUp/Aspect_VKey_NavLookDown; FALSE by default. More... | |
void | SetInvertPitch (bool theToInvert) |
Set flag inverting pitch direction. More... | |
float | WalkSpeedAbsolute () const |
Return normal walking speed, in m/s; 1.5 by default. More... | |
void | SetWalkSpeedAbsolute (float theSpeed) |
Set normal walking speed, in m/s; 1.5 by default. More... | |
float | WalkSpeedRelative () const |
Return walking speed relative to scene bounding box; 0.1 by default. More... | |
void | SetWalkSpeedRelative (float theFactor) |
Set walking speed relative to scene bounding box. More... | |
float | ThrustSpeed () const |
Return active thrust value; 0.0f by default. More... | |
void | SetThrustSpeed (float theSpeed) |
Set active thrust value. More... | |
bool | HasPreviousMoveTo () const |
Return TRUE if previous position of MoveTo has been defined. More... | |
const Graphic3d_Vec2i & | PreviousMoveTo () const |
Return previous position of MoveTo event in 3D viewer. More... | |
void | ResetPreviousMoveTo () |
Reset previous position of MoveTo. More... | |
bool | ToDisplayXRAuxDevices () const |
Return TRUE to display auxiliary tracked XR devices (like tracking stations). More... | |
void | SetDisplayXRAuxDevices (bool theToDisplay) |
Set if auxiliary tracked XR devices should be displayed. More... | |
bool | ToDisplayXRHands () const |
Return TRUE to display XR hand controllers. More... | |
void | SetDisplayXRHands (bool theToDisplay) |
Set if tracked XR hand controllers should be displayed. More... | |
keyboard input | |
const Aspect_VKeySet & | Keys () const |
Return keyboard state. More... | |
Aspect_VKeySet & | ChangeKeys () |
Return keyboard state. More... | |
virtual void | KeyDown (Aspect_VKey theKey, double theTime, double thePressure=1.0) |
Press key. More... | |
virtual void | KeyUp (Aspect_VKey theKey, double theTime) |
Release key. More... | |
virtual void | KeyFromAxis (Aspect_VKey theNegative, Aspect_VKey thePositive, double theTime, double thePressure) |
Simulate key up/down events from axis value. More... | |
AIS_WalkDelta | FetchNavigationKeys (Standard_Real theCrouchRatio, Standard_Real theRunRatio) |
Fetch active navigation actions. More... | |
mouse input | |
const AIS_MouseGestureMap & | MouseGestureMap () const |
Return map defining mouse gestures. More... | |
AIS_MouseGestureMap & | ChangeMouseGestureMap () |
Return map defining mouse gestures. More... | |
double | MouseDoubleClickInterval () const |
Return double click interval in seconds; 0.4 by default. More... | |
void | SetMouseDoubleClickInterval (double theSeconds) |
Set double click interval in seconds. More... | |
virtual void | SelectInViewer (const Graphic3d_Vec2i &thePnt, const bool theIsXOR=false) |
Perform selection in 3D viewer. This method is expected to be called from UI thread. More... | |
virtual void | SelectInViewer (const NCollection_Sequence< Graphic3d_Vec2i > &thePnts, const bool theIsXOR=false) |
Perform selection in 3D viewer. This method is expected to be called from UI thread. More... | |
virtual void | UpdateRubberBand (const Graphic3d_Vec2i &thePntFrom, const Graphic3d_Vec2i &thePntTo, const bool theIsXOR=false) |
Update rectangle selection tool. This method is expected to be called from UI thread. More... | |
virtual void | UpdatePolySelection (const Graphic3d_Vec2i &thePnt, bool theToAppend) |
Update polygonal selection tool. This method is expected to be called from UI thread. More... | |
virtual bool | UpdateZoom (const Aspect_ScrollDelta &theDelta) |
Update zoom event (e.g. from mouse scroll). This method is expected to be called from UI thread. More... | |
virtual bool | UpdateZRotation (double theAngle) |
Update Z rotation event. More... | |
virtual bool | UpdateMouseScroll (const Aspect_ScrollDelta &theDelta) |
Update mouse scroll event; redirects to UpdateZoom by default. This method is expected to be called from UI thread. More... | |
virtual bool | UpdateMouseButtons (const Graphic3d_Vec2i &thePoint, Aspect_VKeyMouse theButtons, Aspect_VKeyFlags theModifiers, bool theIsEmulated) |
Handle mouse button press/release event. This method is expected to be called from UI thread. More... | |
virtual bool | UpdateMousePosition (const Graphic3d_Vec2i &thePoint, Aspect_VKeyMouse theButtons, Aspect_VKeyFlags theModifiers, bool theIsEmulated) |
Handle mouse cursor movement event. This method is expected to be called from UI thread. More... | |
bool | PressMouseButton (const Graphic3d_Vec2i &thePoint, Aspect_VKeyMouse theButton, Aspect_VKeyFlags theModifiers, bool theIsEmulated) |
Handle mouse button press event. This method is expected to be called from UI thread. More... | |
bool | ReleaseMouseButton (const Graphic3d_Vec2i &thePoint, Aspect_VKeyMouse theButton, Aspect_VKeyFlags theModifiers, bool theIsEmulated) |
Handle mouse button release event. This method is expected to be called from UI thread. More... | |
virtual bool | UpdateMouseClick (const Graphic3d_Vec2i &thePoint, Aspect_VKeyMouse theButton, Aspect_VKeyFlags theModifiers, bool theIsDoubleClick) |
Handle mouse button click event (emulated by UpdateMouseButtons() while releasing single button). Note that as this method is called by UpdateMouseButtons(), it should be executed from UI thread. Default implementation redirects to SelectInViewer(). This method is expected to be called from UI thread. More... | |
Aspect_VKeyMouse | PressedMouseButtons () const |
Return currently pressed mouse buttons. More... | |
Aspect_VKeyFlags | LastMouseFlags () const |
Return active key modifiers passed with last mouse event. More... | |
const Graphic3d_Vec2i & | LastMousePosition () const |
Return last mouse position. More... | |
multi-touch input | |
float | TouchToleranceScale () const |
Return scale factor for adjusting tolerances for starting multi-touch gestures; 1.0 by default This scale factor is expected to be computed from touch screen resolution. More... | |
void | SetTouchToleranceScale (float theTolerance) |
Set scale factor for adjusting tolerances for starting multi-touch gestures. More... | |
bool | HasTouchPoints () const |
Return TRUE if touches map is not empty. More... | |
virtual void | AddTouchPoint (Standard_Size theId, const Graphic3d_Vec2d &thePnt, Standard_Boolean theClearBefore=false) |
Add touch point with the given ID. This method is expected to be called from UI thread. More... | |
virtual bool | RemoveTouchPoint (Standard_Size theId, Standard_Boolean theClearSelectPnts=false) |
Remove touch point with the given ID. This method is expected to be called from UI thread. More... | |
virtual void | UpdateTouchPoint (Standard_Size theId, const Graphic3d_Vec2d &thePnt) |
Update touch point with the given ID. If point with specified ID was not registered before, it will be added. This method is expected to be called from UI thread. More... | |
Protected Attributes | |
XR input variables | |
NCollection_Array1< Handle< AIS_XRTrackedDevice > > | myXRPrsDevices |
array of XR tracked devices presentations More... | |
Handle< Graphic3d_Camera > | myXRCameraTmp |
temporary camera More... | |
Quantity_Color | myXRLaserTeleColor |
color of teleport laser More... | |
Quantity_Color | myXRLaserPickColor |
color of picking laser More... | |
Aspect_XRTrackedDeviceRole | myXRLastTeleportHand |
active hand for teleport More... | |
Aspect_XRTrackedDeviceRole | myXRLastPickingHand |
active hand for picking objects More... | |
Aspect_XRHapticActionData | myXRTeleportHaptic |
vibration on picking teleport destination More... | |
Aspect_XRHapticActionData | myXRPickingHaptic |
vibration on dynamic highlighting More... | |
Aspect_XRHapticActionData | myXRSelectHaptic |
vibration on selection More... | |
Standard_Real | myXRLastPickDepthLeft |
last picking depth for left hand More... | |
Standard_Real | myXRLastPickDepthRight |
last picking depth for right hand More... | |
Standard_Real | myXRTurnAngle |
discrete turn angle for XR trackpad More... | |
Standard_Boolean | myToDisplayXRAuxDevices |
flag to display auxiliary tracked XR devices More... | |
Standard_Boolean | myToDisplayXRHands |
flag to display XR hands More... | |
keyboard input variables | |
Aspect_VKeySet | myKeys |
keyboard state More... | |
mouse input variables | |
Standard_Real | myMouseClickThreshold |
mouse click threshold in pixels; 3 by default More... | |
Standard_Real | myMouseDoubleClickInt |
double click interval in seconds; 0.4 by default More... | |
Standard_ShortReal | myScrollZoomRatio |
distance ratio for mapping mouse scroll event to zoom; 15.0 by default More... | |
AIS_MouseGestureMap | myMouseGestureMap |
map defining mouse gestures More... | |
AIS_MouseGesture | myMouseActiveGesture |
initiated mouse gesture (by pressing mouse button) More... | |
Standard_Boolean | myMouseActiveIdleRotation |
flag indicating view idle rotation state More... | |
Graphic3d_Vec2i | myMousePositionLast |
last mouse position More... | |
Graphic3d_Vec2i | myMousePressPoint |
mouse position where active gesture was been initiated More... | |
Graphic3d_Vec2i | myMouseProgressPoint |
gesture progress More... | |
OSD_Timer | myMouseClickTimer |
timer for handling double-click event More... | |
Standard_Integer | myMouseClickCounter |
counter for handling double-click event More... | |
Aspect_VKeyMouse | myMousePressed |
active mouse buttons More... | |
Aspect_VKeyFlags | myMouseModifiers |
active key modifiers passed with last mouse event More... | |
Standard_Integer | myMouseSingleButton |
index of mouse button pressed alone (>0) More... | |
Standard_Boolean | myMouseStopDragOnUnclick |
queue stop dragging even with at next mouse unclick More... | |
multi-touch input variables | |
Standard_ShortReal | myTouchToleranceScale |
tolerance scale factor; 1.0 by default More... | |
Standard_ShortReal | myTouchRotationThresholdPx |
threshold for starting one-touch rotation gesture in pixels; 6 by default More... | |
Standard_ShortReal | myTouchZRotationThreshold |
threshold for starting two-touch Z-rotation gesture in radians; 2 degrees by default More... | |
Standard_ShortReal | myTouchPanThresholdPx |
threshold for starting two-touch panning gesture in pixels; 4 by default More... | |
Standard_ShortReal | myTouchZoomThresholdPx |
threshold for starting two-touch zoom (pitch) gesture in pixels; 6 by default More... | |
Standard_ShortReal | myTouchZoomRatio |
distance ratio for mapping two-touch zoom (pitch) gesture from pixels to zoom; 0.13 by default More... | |
Aspect_TouchMap | myTouchPoints |
map of active touches More... | |
Graphic3d_Vec2d | myStartPanCoord |
touch coordinates at the moment of starting panning gesture More... | |
Graphic3d_Vec2d | myStartRotCoord |
touch coordinates at the moment of starting rotating gesture More... | |
Standard_Integer | myNbTouchesLast |
number of touches within previous gesture flush to track gesture changes More... | |
Standard_Boolean | myUpdateStartPointPan |
flag indicating that new anchor point should be picked for starting panning gesture More... | |
Standard_Boolean | myUpdateStartPointRot |
flag indicating that new gravity point should be picked for starting rotation gesture More... | |
Standard_Boolean | myUpdateStartPointZRot |
flag indicating that new gravity point should be picked for starting Z-rotation gesture More... | |
3d mouse input variables | |
bool | my3dMouseButtonState [32] |
cached button state More... | |
NCollection_Vec3< bool > | my3dMouseNoRotate |
ignore 3d mouse rotation axes More... | |
NCollection_Vec3< bool > | my3dMouseToReverse |
reverse 3d mouse rotation axes More... | |
float | my3dMouseAccelTrans |
acceleration ratio for translation event More... | |
float | my3dMouseAccelRotate |
acceleration ratio for rotation event More... | |
bool | my3dMouseIsQuadric |
quadric acceleration More... | |
rotation/panning transient state variables | |
Handle< AIS_Point > | myAnchorPointPrs1 |
anchor point presentation (Graphic3d_ZLayerId_Top) More... | |
Handle< AIS_Point > | myAnchorPointPrs2 |
anchor point presentation (Graphic3d_ZLayerId_Topmost) More... | |
gp_Pnt | myPanPnt3d |
active panning anchor point More... | |
gp_Pnt | myRotatePnt3d |
active rotation center of gravity More... | |
gp_Dir | myCamStartOpUp |
camera Up direction at the beginning of rotation More... | |
gp_Dir | myCamStartOpDir |
camera View direction at the beginning of rotation More... | |
gp_Pnt | myCamStartOpEye |
camera Eye position at the beginning of rotation More... | |
gp_Pnt | myCamStartOpCenter |
camera Center position at the beginning of rotation More... | |
gp_Vec | myCamStartOpToCenter |
vector from rotation gravity point to camera Center at the beginning of rotation More... | |
gp_Vec | myCamStartOpToEye |
vector from rotation gravity point to camera Eye at the beginning of rotation More... | |
Graphic3d_Vec3d | myRotateStartYawPitchRoll |
camera yaw pitch roll at the beginning of rotation More... | |
3d mouse input | |
AIS_ViewInputBuffer | myUI |
buffer for UI thread More... | |
AIS_ViewInputBuffer | myGL |
buffer for rendering thread More... | |
OSD_Timer | myEventTimer |
timer for timestamping events More... | |
Standard_Real | myLastEventsTime |
last fetched events timer value for computing delta/progress More... | |
Standard_Boolean | myToAskNextFrame |
flag indicating that another frame should be drawn right after this one More... | |
Standard_Real | myMinCamDistance |
minimal camera distance for zoom operation More... | |
AIS_RotationMode | myRotationMode |
rotation mode More... | |
AIS_NavigationMode | myNavigationMode |
navigation mode (orbit rotation / first person) More... | |
Standard_ShortReal | myMouseAccel |
mouse input acceleration ratio in First Person mode More... | |
Standard_ShortReal | myOrbitAccel |
Orbit rotation acceleration ratio. More... | |
Standard_Boolean | myToShowPanAnchorPoint |
option displaying panning anchor point More... | |
Standard_Boolean | myToShowRotateCenter |
option displaying rotation center point More... | |
Standard_Boolean | myToLockOrbitZUp |
force camera up orientation within AIS_NavigationMode_Orbit rotation mode More... | |
Standard_Boolean | myToInvertPitch |
flag inverting pitch direction while processing Aspect_VKey_NavLookUp/Aspect_VKey_NavLookDown More... | |
Standard_Boolean | myToAllowTouchZRotation |
enable z-rotation two-touches gesture; FALSE by default More... | |
Standard_Boolean | myToAllowRotation |
enable rotation; TRUE by default More... | |
Standard_Boolean | myToAllowPanning |
enable panning; TRUE by default More... | |
Standard_Boolean | myToAllowZooming |
enable zooming; TRUE by default More... | |
Standard_Boolean | myToAllowZFocus |
enable ZFocus change; TRUE by default More... | |
Standard_Boolean | myToAllowHighlight |
enable dynamic highlight on mouse move; TRUE by default More... | |
Standard_Boolean | myToAllowDragging |
enable dragging object; TRUE by default More... | |
Standard_Boolean | myToStickToRayOnZoom |
project picked point to ray while zooming at point, TRUE by default More... | |
Standard_Boolean | myToStickToRayOnRotation |
project picked point to ray while rotating around point; TRUE by default More... | |
Standard_ShortReal | myWalkSpeedAbsolute |
normal walking speed, in m/s; 1.5 by default More... | |
Standard_ShortReal | myWalkSpeedRelative |
walking speed relative to scene bounding box; 0.1 by default More... | |
Standard_ShortReal | myThrustSpeed |
active thrust value More... | |
Standard_Boolean | myHasThrust |
flag indicating active thrust More... | |
Handle< AIS_AnimationCamera > | myViewAnimation |
view animation More... | |
Handle< AIS_RubberBand > | myRubberBand |
Rubber-band presentation. More... | |
Handle< SelectMgr_EntityOwner > | myDragOwner |
detected owner of currently dragged object More... | |
Handle< AIS_InteractiveObject > | myDragObject |
currently dragged object More... | |
Graphic3d_Vec2i | myPrevMoveTo |
previous position of MoveTo event in 3D viewer More... | |
Standard_Boolean | myHasHlrOnBeforeRotation |
flag for restoring Computed mode after rotation More... | |
float | Get3dMouseTranslationScale () const |
Return acceleration ratio for translation event; 2.0 by default. More... | |
void | Set3dMouseTranslationScale (float theScale) |
Set acceleration ratio for translation event. More... | |
float | Get3dMouseRotationScale () const |
Return acceleration ratio for rotation event; 4.0 by default. More... | |
void | Set3dMouseRotationScale (float theScale) |
Set acceleration ratio for rotation event. More... | |
bool | To3dMousePreciseInput () const |
Return quadric acceleration flag; TRUE by default. More... | |
void | Set3dMousePreciseInput (bool theIsQuadric) |
Set quadric acceleration flag. More... | |
const NCollection_Vec3< bool > & | Get3dMouseIsNoRotate () const |
Return 3d mouse rotation axes (tilt/roll/spin) ignore flag; (FALSE, FALSE, FALSE) by default. More... | |
NCollection_Vec3< bool > & | Change3dMouseIsNoRotate () |
Return 3d mouse rotation axes (tilt/roll/spin) ignore flag; (FALSE, FALSE, FALSE) by default. More... | |
const NCollection_Vec3< bool > & | Get3dMouseToReverse () const |
Return 3d mouse rotation axes (tilt/roll/spin) reverse flag; (TRUE, FALSE, FALSE) by default. More... | |
NCollection_Vec3< bool > & | Change3dMouseToReverse () |
Return 3d mouse rotation axes (tilt/roll/spin) reverse flag; (TRUE, FALSE, FALSE) by default. More... | |
virtual bool | Update3dMouse (const WNT_HIDSpaceMouse &theEvent) |
Process 3d mouse input event (redirects to translation, rotation and keys). More... | |
virtual bool | update3dMouseTranslation (const WNT_HIDSpaceMouse &theEvent) |
Process 3d mouse input translation event. More... | |
virtual bool | update3dMouseRotation (const WNT_HIDSpaceMouse &theEvent) |
Process 3d mouse input rotation event. More... | |
virtual bool | update3dMouseKeys (const WNT_HIDSpaceMouse &theEvent) |
Process 3d mouse input keys event. More... | |
double | EventTime () const |
Return event time (e.g. current time). More... | |
virtual void | ResetViewInput () |
Reset input state (pressed keys, mouse buttons, etc.) e.g. on window focus loss. This method is expected to be called from UI thread. More... | |
virtual void | UpdateViewOrientation (V3d_TypeOfOrientation theOrientation, bool theToFitAll) |
Reset view orientation. This method is expected to be called from UI thread. More... | |
virtual void | FlushViewEvents (const Handle< AIS_InteractiveContext > &theCtx, const Handle< V3d_View > &theView, Standard_Boolean theToHandle=Standard_False) |
Update buffer for rendering thread. This method is expected to be called within synchronization barrier between GUI and Rendering threads (e.g. GUI thread should be locked beforehand to avoid data races). More... | |
virtual void | HandleViewEvents (const Handle< AIS_InteractiveContext > &theCtx, const Handle< V3d_View > &theView) |
Process events within rendering thread. More... | |
virtual void | OnSelectionChanged (const Handle< AIS_InteractiveContext > &theCtx, const Handle< V3d_View > &theView) |
Callback called by handleMoveTo() on Selection in 3D Viewer. This method is expected to be called from rendering thread. More... | |
virtual void | OnObjectDragged (const Handle< AIS_InteractiveContext > &theCtx, const Handle< V3d_View > &theView, AIS_DragAction theAction) |
Callback called by handleMoveTo() on dragging object in 3D Viewer. This method is expected to be called from rendering thread. More... | |
virtual bool | PickPoint (gp_Pnt &thePnt, const Handle< AIS_InteractiveContext > &theCtx, const Handle< V3d_View > &theView, const Graphic3d_Vec2i &theCursor, bool theToStickToPickRay) |
Pick closest point under mouse cursor. This method is expected to be called from rendering thread. More... | |
virtual gp_Pnt | GravityPoint (const Handle< AIS_InteractiveContext > &theCtx, const Handle< V3d_View > &theView) |
Compute rotation gravity center point depending on rotation mode. This method is expected to be called from rendering thread. More... | |
virtual void | FitAllAuto (const Handle< AIS_InteractiveContext > &theCtx, const Handle< V3d_View > &theView) |
Modify view camera to fit all objects. Default implementation fits either all visible and all selected objects (swapped on each call). More... | |
virtual void | handleViewOrientationKeys (const Handle< AIS_InteractiveContext > &theCtx, const Handle< V3d_View > &theView) |
Handle hot-keys defining new camera orientation (Aspect_VKey_ViewTop and similar keys). Default implementation starts an animated transaction from the current to the target camera orientation, when specific action key was pressed. This method is expected to be called from rendering thread. More... | |
virtual AIS_WalkDelta | handleNavigationKeys (const Handle< AIS_InteractiveContext > &theCtx, const Handle< V3d_View > &theView) |
Perform navigation (Aspect_VKey_NavForward and similar keys). This method is expected to be called from rendering thread. More... | |
virtual void | handleCameraActions (const Handle< AIS_InteractiveContext > &theCtx, const Handle< V3d_View > &theView, const AIS_WalkDelta &theWalk) |
Perform immediate camera actions (rotate/zoom/pan) on gesture progress. This method is expected to be called from rendering thread. More... | |
virtual void | handleMoveTo (const Handle< AIS_InteractiveContext > &theCtx, const Handle< V3d_View > &theView) |
Perform moveto/selection/dragging. This method is expected to be called from rendering thread. More... | |
bool | toAskNextFrame () const |
Return TRUE if another frame should be drawn right after this one. More... | |
void | setAskNextFrame (bool theToDraw=true) |
Set if another frame should be drawn right after this one. More... | |
bool | hasPanningAnchorPoint () const |
Return if panning anchor point has been defined. More... | |
const gp_Pnt & | panningAnchorPoint () const |
Return active panning anchor point. More... | |
void | setPanningAnchorPoint (const gp_Pnt &thePnt) |
Set active panning anchor point. More... | |
virtual void | handlePanning (const Handle< V3d_View > &theView) |
Handle panning event myGL.Panning. More... | |
virtual void | handleZRotate (const Handle< V3d_View > &theView) |
Handle Z rotation event myGL.ZRotate. More... | |
double | MinZoomDistance () const |
Return minimal camera distance for zoom operation. More... | |
void | SetMinZoomDistance (double theDist) |
Set minimal camera distance for zoom operation. More... | |
virtual void | handleZoom (const Handle< V3d_View > &theView, const Aspect_ScrollDelta &theParams, const gp_Pnt *thePnt) |
Handle zoom event myGL.ZoomActions. This method is expected to be called from rendering thread. More... | |
virtual void | handleZFocusScroll (const Handle< V3d_View > &theView, const Aspect_ScrollDelta &theParams) |
Handle ZScroll event myGL.ZoomActions. This method is expected to be called from rendering thread. More... | |
virtual void | handleOrbitRotation (const Handle< V3d_View > &theView, const gp_Pnt &thePnt, bool theToLockZUp) |
Handle orbital rotation events myGL.OrbitRotation. More... | |
virtual void | handleViewRotation (const Handle< V3d_View > &theView, double theYawExtra, double thePitchExtra, double theRoll, bool theToRestartOnIncrement) |
Handle view direction rotation events myGL.ViewRotation. This method is expected to be called from rendering thread. More... | |
virtual void | handleViewRedraw (const Handle< AIS_InteractiveContext > &theCtx, const Handle< V3d_View > &theView) |
Handle view redraw. This method is expected to be called from rendering thread. More... | |
virtual void | handleXRInput (const Handle< AIS_InteractiveContext > &theCtx, const Handle< V3d_View > &theView, const AIS_WalkDelta &theWalk) |
Perform XR input. This method is expected to be called from rendering thread. More... | |
virtual void | handleXRTurnPad (const Handle< AIS_InteractiveContext > &theCtx, const Handle< V3d_View > &theView) |
Handle trackpad view turn action. More... | |
virtual void | handleXRTeleport (const Handle< AIS_InteractiveContext > &theCtx, const Handle< V3d_View > &theView) |
Handle trackpad teleportation action. More... | |
virtual void | handleXRPicking (const Handle< AIS_InteractiveContext > &theCtx, const Handle< V3d_View > &theView) |
Handle picking on trigger click. More... | |
virtual void | handleXRHighlight (const Handle< AIS_InteractiveContext > &theCtx, const Handle< V3d_View > &theView) |
Perform dynamic highlighting for active hand. More... | |
virtual void | handleXRPresentations (const Handle< AIS_InteractiveContext > &theCtx, const Handle< V3d_View > &theView) |
Display auxiliary XR presentations. More... | |
virtual Standard_Integer | handleXRMoveTo (const Handle< AIS_InteractiveContext > &theCtx, const Handle< V3d_View > &theView, const gp_Trsf &thePose, const Standard_Boolean theToHighlight) |
Perform picking with/without dynamic highlighting for XR pose. More... | |
virtual void | flushBuffers (const Handle< AIS_InteractiveContext > &theCtx, const Handle< V3d_View > &theView) |
Flush buffers. More... | |
virtual void | flushGestures (const Handle< AIS_InteractiveContext > &theCtx, const Handle< V3d_View > &theView) |
Flush touch gestures. More... | |
void | updateEventsTime (double &thePrevTime, double &theCurrTime) |
Return current and previously fetched event times. This callback is intended to compute delta between sequentially processed events. More... | |
virtual void | handleSelectionPick (const Handle< AIS_InteractiveContext > &theCtx, const Handle< V3d_View > &theView) |
Perform selection via mouse click. This method is expected to be called from rendering thread. More... | |
virtual void | handleDynamicHighlight (const Handle< AIS_InteractiveContext > &theCtx, const Handle< V3d_View > &theView) |
Perform dynamic highlight on mouse move. This method is expected to be called from rendering thread. More... | |
virtual void | handleSelectionPoly (const Handle< AIS_InteractiveContext > &theCtx, const Handle< V3d_View > &theView) |
Perform rubber-band selection. This method is expected to be called from rendering thread. More... | |
virtual void | contextLazyMoveTo (const Handle< AIS_InteractiveContext > &theCtx, const Handle< V3d_View > &theView, const Graphic3d_Vec2i &thePnt) |
Lazy AIS_InteractiveContext::MoveTo() with myPrevMoveTo check. More... | |
Auxiliary structure for handling viewer events between GUI and Rendering threads.
Class implements the following features:
AIS_ViewController::AIS_ViewController | ( | ) |
Empty constructor.
|
virtual |
Destructor.
void AIS_ViewController::AbortViewAnimation | ( | ) |
Interrupt active view animation.
|
virtual |
Add touch point with the given ID. This method is expected to be called from UI thread.
theId | touch unique identifier |
thePnt | touch coordinates |
theClearBefore | if TRUE previously registered touches will be removed |
|
inline |
Return 3d mouse rotation axes (tilt/roll/spin) ignore flag; (FALSE, FALSE, FALSE) by default.
|
inline |
Return 3d mouse rotation axes (tilt/roll/spin) reverse flag; (TRUE, FALSE, FALSE) by default.
|
inline |
Return input buffer.
|
inline |
Return keyboard state.
|
inline |
Return map defining mouse gestures.
|
protectedvirtual |
Lazy AIS_InteractiveContext::MoveTo() with myPrevMoveTo check.
|
inline |
Return event time (e.g. current time).
AIS_WalkDelta AIS_ViewController::FetchNavigationKeys | ( | Standard_Real | theCrouchRatio, |
Standard_Real | theRunRatio | ||
) |
Fetch active navigation actions.
|
virtual |
Modify view camera to fit all objects. Default implementation fits either all visible and all selected objects (swapped on each call).
|
protectedvirtual |
Flush buffers.
|
protectedvirtual |
Flush touch gestures.
|
virtual |
Update buffer for rendering thread. This method is expected to be called within synchronization barrier between GUI and Rendering threads (e.g. GUI thread should be locked beforehand to avoid data races).
theCtx | interactive context |
theView | active view |
theToHandle | if TRUE, the HandleViewEvents() will be called |
|
inline |
Return 3d mouse rotation axes (tilt/roll/spin) ignore flag; (FALSE, FALSE, FALSE) by default.
|
inline |
Return acceleration ratio for rotation event; 4.0 by default.
|
inline |
Return 3d mouse rotation axes (tilt/roll/spin) reverse flag; (TRUE, FALSE, FALSE) by default.
|
inline |
Return acceleration ratio for translation event; 2.0 by default.
|
virtual |
Compute rotation gravity center point depending on rotation mode. This method is expected to be called from rendering thread.
|
virtual |
Perform immediate camera actions (rotate/zoom/pan) on gesture progress. This method is expected to be called from rendering thread.
|
protectedvirtual |
Perform dynamic highlight on mouse move. This method is expected to be called from rendering thread.
|
virtual |
Perform moveto/selection/dragging. This method is expected to be called from rendering thread.
|
virtual |
Perform navigation (Aspect_VKey_NavForward and similar keys). This method is expected to be called from rendering thread.
|
virtual |
Handle orbital rotation events myGL.OrbitRotation.
theView | view to modify |
thePnt | 3D point to rotate around |
theToLockZUp | amend camera to exclude roll angle (put camera Up vector to plane containing global Z and view direction) |
Handle panning event myGL.Panning.
|
protectedvirtual |
Perform selection via mouse click. This method is expected to be called from rendering thread.
|
protectedvirtual |
Perform rubber-band selection. This method is expected to be called from rendering thread.
|
virtual |
Process events within rendering thread.
|
virtual |
Handle hot-keys defining new camera orientation (Aspect_VKey_ViewTop and similar keys). Default implementation starts an animated transaction from the current to the target camera orientation, when specific action key was pressed. This method is expected to be called from rendering thread.
|
virtual |
Handle view redraw. This method is expected to be called from rendering thread.
Reimplemented in ViewerTest_EventManager.
|
virtual |
Handle view direction rotation events myGL.ViewRotation. This method is expected to be called from rendering thread.
theView | camera to modify |
theYawExtra | extra yaw increment |
thePitchExtra | extra pitch increment |
theRoll | roll value |
theToRestartOnIncrement | flag indicating flight mode |
|
virtual |
Perform dynamic highlighting for active hand.
|
virtual |
Perform XR input. This method is expected to be called from rendering thread.
|
virtual |
Perform picking with/without dynamic highlighting for XR pose.
|
virtual |
Handle picking on trigger click.
|
virtual |
Display auxiliary XR presentations.
|
virtual |
Handle trackpad teleportation action.
|
virtual |
Handle trackpad view turn action.
|
virtual |
Handle ZScroll event myGL.ZoomActions. This method is expected to be called from rendering thread.
|
virtual |
Handle zoom event myGL.ZoomActions. This method is expected to be called from rendering thread.
Handle Z rotation event myGL.ZRotate.
|
inline |
Return if panning anchor point has been defined.
|
inline |
Return TRUE if previous position of MoveTo has been defined.
|
inline |
Return TRUE if touches map is not empty.
|
inline |
Return input buffer.
|
virtual |
Press key.
theKey | key pressed |
theTime | event timestamp |
Reimplemented in ViewerTest_EventManager.
|
virtual |
Simulate key up/down events from axis value.
|
inline |
Return keyboard state.
|
virtual |
Release key.
theKey | key pressed |
theTime | event timestamp |
Reimplemented in ViewerTest_EventManager.
|
inline |
Return active key modifiers passed with last mouse event.
|
inline |
Return last mouse position.
|
inline |
Return minimal camera distance for zoom operation.
|
inline |
Return mouse input acceleration ratio in First Person mode; 1.0 by default.
|
inline |
Return double click interval in seconds; 0.4 by default.
|
inline |
Return map defining mouse gestures.
|
inline |
Return camera navigation mode; AIS_NavigationMode_Orbit by default.
|
virtual |
Callback called by handleMoveTo() on dragging object in 3D Viewer. This method is expected to be called from rendering thread.
|
virtual |
Callback called by handleMoveTo() on Selection in 3D Viewer. This method is expected to be called from rendering thread.
|
inline |
Return orbit rotation acceleration ratio; 1.0 by default.
|
inline |
Return active panning anchor point.
|
virtual |
Pick closest point under mouse cursor. This method is expected to be called from rendering thread.
thePnt | [out] result point |
theCtx | [in] interactive context |
theView | [in] active view |
theCursor | [in] mouse cursor |
theToStickToPickRay | [in] when TRUE, the result point will lie on picking ray |
|
inline |
Return currently pressed mouse buttons.
|
inline |
Handle mouse button press event. This method is expected to be called from UI thread.
thePoint | mouse cursor position |
theButton | pressed button |
theModifiers | key modifiers |
theIsEmulated | if TRUE then mouse event comes NOT from real mouse but emulated from non-precise input like touch on screen |
|
inline |
Return previous position of MoveTo event in 3D viewer.
|
inline |
Handle mouse button release event. This method is expected to be called from UI thread.
thePoint | mouse cursor position |
theButton | released button |
theModifiers | key modifiers |
theIsEmulated | if TRUE then mouse event comes NOT from real mouse but emulated from non-precise input like touch on screen |
|
virtual |
Remove touch point with the given ID. This method is expected to be called from UI thread.
theId | touch unique identifier |
theClearSelectPnts | if TRUE will initiate clearing of selection points |
|
inline |
Reset previous position of MoveTo.
|
virtual |
Reset input state (pressed keys, mouse buttons, etc.) e.g. on window focus loss. This method is expected to be called from UI thread.
|
inline |
Return camera rotation mode, AIS_RotationMode_BndBoxActive by default.
|
virtual |
Perform selection in 3D viewer. This method is expected to be called from UI thread.
thePnt | picking point |
theIsXOR | XOR selection flag |
|
virtual |
Perform selection in 3D viewer. This method is expected to be called from UI thread.
thePnts | picking point |
theIsXOR | XOR selection flag |
|
inline |
Set quadric acceleration flag.
|
inline |
Set acceleration ratio for rotation event.
|
inline |
Set acceleration ratio for translation event.
|
inline |
Set if dynamic highlight on mouse move is allowed.
|
inline |
Set if dragging object is allowed.
|
inline |
Set if panning is allowed.
|
inline |
Set if camera rotation is allowed.
|
inline |
Set if z-rotation via two-touches gesture is enabled.
|
inline |
Set if ZFocus change is allowed.
|
inline |
Set if zooming is allowed.
|
inline |
Set if another frame should be drawn right after this one.
|
inline |
Set if auxiliary tracked XR devices should be displayed.
|
inline |
Set if tracked XR hand controllers should be displayed.
|
inline |
Set flag inverting pitch direction.
|
inline |
Set if camera up orientation within AIS_NavigationMode_Orbit rotation mode should be forced Z up.
|
inline |
Set minimal camera distance for zoom operation.
|
inline |
Set mouse input acceleration ratio.
|
inline |
Set double click interval in seconds.
void AIS_ViewController::SetNavigationMode | ( | AIS_NavigationMode | theMode | ) |
Set camera navigation mode.
|
inline |
Set orbit rotation acceleration ratio.
|
inline |
Set active panning anchor point.
|
inline |
Set camera rotation mode.
|
inline |
Set if panning anchor point within perspective projection should be displayed in 3D Viewer.
|
inline |
Set if rotation point should be displayed in 3D Viewer.
|
inline |
Set if picked point should be projected to picking ray on rotating around point.
|
inline |
Set if picked point should be projected to picking ray on zooming at point.
|
inline |
Set active thrust value.
|
inline |
Set scale factor for adjusting tolerances for starting multi-touch gestures.
|
inline |
Set view animation to be handled within handleViewRedraw().
|
inline |
Set normal walking speed, in m/s; 1.5 by default.
|
inline |
Set walking speed relative to scene bounding box.
|
inline |
Return active thrust value; 0.0f by default.
|
inline |
Return quadric acceleration flag; TRUE by default.
|
inline |
Return TRUE if dragging object is allowed; TRUE by default.
|
inline |
Return TRUE if dynamic highlight on mouse move is allowed; TRUE by default.
|
inline |
Return TRUE if panning is allowed; TRUE by default.
|
inline |
Return TRUE if camera rotation is allowed; TRUE by default.
|
inline |
Return TRUE if z-rotation via two-touches gesture is enabled; FALSE by default.
|
inline |
Return TRUE if ZFocus change is allowed; TRUE by default.
|
inline |
Return TRUE if zooming is allowed; TRUE by default.
|
inline |
Return TRUE if another frame should be drawn right after this one.
|
inline |
Return TRUE to display auxiliary tracked XR devices (like tracking stations).
|
inline |
Return TRUE to display XR hand controllers.
|
inline |
Return TRUE if pitch direction should be inverted while processing Aspect_VKey_NavLookUp/Aspect_VKey_NavLookDown; FALSE by default.
|
inline |
Return TRUE if camera up orientation within AIS_NavigationMode_Orbit rotation mode should be forced Z up; FALSE by default.
|
inline |
Return TRUE if panning anchor point within perspective projection should be displayed in 3D Viewer; TRUE by default.
|
inline |
Return TRUE if rotation point should be displayed in 3D Viewer; TRUE by default.
|
inline |
Return TRUE if picked point should be projected to picking ray on rotating around point; TRUE by default.
|
inline |
Return TRUE if picked point should be projected to picking ray on zooming at point; TRUE by default.
|
inline |
Return scale factor for adjusting tolerances for starting multi-touch gestures; 1.0 by default This scale factor is expected to be computed from touch screen resolution.
|
virtual |
Process 3d mouse input event (redirects to translation, rotation and keys).
|
virtual |
Process 3d mouse input keys event.
|
virtual |
Process 3d mouse input rotation event.
|
virtual |
Process 3d mouse input translation event.
|
inlineprotected |
Return current and previously fetched event times. This callback is intended to compute delta between sequentially processed events.
thePrevTime | [out] events time fetched previous time by this method |
theCurrTime | [out] actual events time |
|
virtual |
Handle mouse button press/release event. This method is expected to be called from UI thread.
thePoint | mouse cursor position |
theButtons | pressed buttons |
theModifiers | key modifiers |
theIsEmulated | if TRUE then mouse event comes NOT from real mouse but emulated from non-precise input like touch on screen |
Reimplemented in ViewerTest_EventManager.
|
virtual |
Handle mouse button click event (emulated by UpdateMouseButtons() while releasing single button). Note that as this method is called by UpdateMouseButtons(), it should be executed from UI thread. Default implementation redirects to SelectInViewer(). This method is expected to be called from UI thread.
thePoint | mouse cursor position |
theButton | clicked button |
theModifiers | key modifiers |
theIsDoubleClick | flag indicating double mouse click |
|
virtual |
Handle mouse cursor movement event. This method is expected to be called from UI thread.
thePoint | mouse cursor position |
theButtons | pressed buttons |
theModifiers | key modifiers |
theIsEmulated | if TRUE then mouse event comes NOT from real mouse but emulated from non-precise input like touch on screen |
|
virtual |
Update mouse scroll event; redirects to UpdateZoom by default. This method is expected to be called from UI thread.
theDelta | mouse cursor position and delta |
|
virtual |
Update polygonal selection tool. This method is expected to be called from UI thread.
thePnt | new point to add to polygon |
theToAppend | append new point or update the last point |
|
virtual |
Update rectangle selection tool. This method is expected to be called from UI thread.
thePntFrom | rectangle first corner |
thePntTo | rectangle another corner |
theIsXOR | XOR selection flag |
|
virtual |
Update touch point with the given ID. If point with specified ID was not registered before, it will be added. This method is expected to be called from UI thread.
theId | touch unique identifier |
thePnt | touch coordinates |
|
virtual |
Reset view orientation. This method is expected to be called from UI thread.
|
virtual |
Update zoom event (e.g. from mouse scroll). This method is expected to be called from UI thread.
theDelta | mouse cursor position to zoom at and zoom delta |
|
virtual |
Update Z rotation event.
theAngle | rotation angle, in radians. |
|
inline |
Return view animation; empty (but not NULL) animation by default.
|
inline |
Return normal walking speed, in m/s; 1.5 by default.
|
inline |
Return walking speed relative to scene bounding box; 0.1 by default.
|
protected |
acceleration ratio for rotation event
|
protected |
acceleration ratio for translation event
|
protected |
cached button state
|
protected |
quadric acceleration
|
protected |
ignore 3d mouse rotation axes
|
protected |
reverse 3d mouse rotation axes
anchor point presentation (Graphic3d_ZLayerId_Top)
anchor point presentation (Graphic3d_ZLayerId_Topmost)
|
protected |
camera Center position at the beginning of rotation
|
protected |
camera View direction at the beginning of rotation
|
protected |
camera Eye position at the beginning of rotation
|
protected |
vector from rotation gravity point to camera Center at the beginning of rotation
|
protected |
vector from rotation gravity point to camera Eye at the beginning of rotation
|
protected |
camera Up direction at the beginning of rotation
|
protected |
currently dragged object
|
protected |
detected owner of currently dragged object
|
protected |
timer for timestamping events
|
protected |
buffer for rendering thread
|
protected |
flag for restoring Computed mode after rotation
|
protected |
flag indicating active thrust
|
protected |
keyboard state
|
protected |
last fetched events timer value for computing delta/progress
|
protected |
minimal camera distance for zoom operation
|
protected |
mouse input acceleration ratio in First Person mode
|
protected |
initiated mouse gesture (by pressing mouse button)
|
protected |
flag indicating view idle rotation state
|
protected |
counter for handling double-click event
|
protected |
mouse click threshold in pixels; 3 by default
|
protected |
timer for handling double-click event
|
protected |
double click interval in seconds; 0.4 by default
|
protected |
map defining mouse gestures
|
protected |
active key modifiers passed with last mouse event
|
protected |
last mouse position
|
protected |
active mouse buttons
|
protected |
mouse position where active gesture was been initiated
|
protected |
gesture progress
|
protected |
index of mouse button pressed alone (>0)
|
protected |
queue stop dragging even with at next mouse unclick
|
protected |
navigation mode (orbit rotation / first person)
|
protected |
number of touches within previous gesture flush to track gesture changes
|
protected |
Orbit rotation acceleration ratio.
|
protected |
active panning anchor point
|
protected |
previous position of MoveTo event in 3D viewer
|
protected |
active rotation center of gravity
|
protected |
camera yaw pitch roll at the beginning of rotation
|
protected |
rotation mode
|
protected |
Rubber-band presentation.
|
protected |
distance ratio for mapping mouse scroll event to zoom; 15.0 by default
|
protected |
touch coordinates at the moment of starting panning gesture
|
protected |
touch coordinates at the moment of starting rotating gesture
|
protected |
active thrust value
|
protected |
enable dragging object; TRUE by default
|
protected |
enable dynamic highlight on mouse move; TRUE by default
|
protected |
enable panning; TRUE by default
|
protected |
enable rotation; TRUE by default
|
protected |
enable z-rotation two-touches gesture; FALSE by default
|
protected |
enable ZFocus change; TRUE by default
|
protected |
enable zooming; TRUE by default
|
protected |
flag indicating that another frame should be drawn right after this one
|
protected |
flag to display auxiliary tracked XR devices
|
protected |
flag to display XR hands
|
protected |
flag inverting pitch direction while processing Aspect_VKey_NavLookUp/Aspect_VKey_NavLookDown
|
protected |
force camera up orientation within AIS_NavigationMode_Orbit rotation mode
|
protected |
option displaying panning anchor point
|
protected |
option displaying rotation center point
|
protected |
project picked point to ray while rotating around point; TRUE by default
|
protected |
project picked point to ray while zooming at point, TRUE by default
|
protected |
threshold for starting two-touch panning gesture in pixels; 4 by default
|
protected |
map of active touches
|
protected |
threshold for starting one-touch rotation gesture in pixels; 6 by default
|
protected |
tolerance scale factor; 1.0 by default
|
protected |
distance ratio for mapping two-touch zoom (pitch) gesture from pixels to zoom; 0.13 by default
|
protected |
threshold for starting two-touch zoom (pitch) gesture in pixels; 6 by default
|
protected |
threshold for starting two-touch Z-rotation gesture in radians; 2 degrees by default
|
protected |
buffer for UI thread
|
protected |
flag indicating that new anchor point should be picked for starting panning gesture
|
protected |
flag indicating that new gravity point should be picked for starting rotation gesture
|
protected |
flag indicating that new gravity point should be picked for starting Z-rotation gesture
|
protected |
view animation
|
protected |
normal walking speed, in m/s; 1.5 by default
|
protected |
walking speed relative to scene bounding box; 0.1 by default
|
protected |
temporary camera
|
protected |
color of picking laser
|
protected |
color of teleport laser
|
protected |
last picking depth for left hand
|
protected |
last picking depth for right hand
|
protected |
active hand for picking objects
|
protected |
active hand for teleport
|
protected |
vibration on dynamic highlighting
|
protected |
array of XR tracked devices presentations
|
protected |
vibration on selection
|
protected |
vibration on picking teleport destination
|
protected |
discrete turn angle for XR trackpad