API reference

TouchHandGrabInteractor Class

Implements ITimeConsumer
TouchHandGrabInteractor provides a hand-specific grab interaction model where selection begins when finger tips overlap with an associated interactable.
Upon selection, the distance between the fingers and thumb is cached and is used for determining the point of release: when fingers are outside of the cached distance.

Protected Fields

GrabPrerequisite : IActiveState
Signature
IActiveState GrabPrerequisite
HandSphereMap : IHandSphereMap
Signature
IHandSphereMap HandSphereMap

Events

WhenFingerLocked : Action
Signature
Action WhenFingerLocked

Protected Methods

Awake ()
Signature
override void Awake()
Returns
override void
ComputeCandidate ()
Signature
override TouchHandGrabInteractable ComputeCandidate()
ComputePointerPose ()
Signature
override Pose ComputePointerPose()
Returns
override Pose
ComputeShouldSelect ()
Signature
override bool ComputeShouldSelect()
Returns
override bool
ComputeShouldUnselect ()
Signature
override bool ComputeShouldUnselect()
Returns
override bool
DoHoverUpdate ()
Signature
override void DoHoverUpdate()
Returns
override void
DoPostprocess ()
Signature
override void DoPostprocess()
Returns
override void
DoPreprocess ()
Signature
override void DoPreprocess()
Returns
override void
DoSelectUpdate ()
Signature
override void DoSelectUpdate()
Returns
override void
Start ()
Signature
override void Start()
Returns
override void

Methods

GetFingerJoints ( finger )
Signature
Pose[] GetFingerJoints(HandFinger finger)
Parameters
finger: HandFinger
Returns
Pose[]
InjectAllTouchHandGrabInteractor ( hand , openHand , handSphereMap , hoverLocation , grabLocation )
Signature
void InjectAllTouchHandGrabInteractor(IHand hand, IHand openHand, IHandSphereMap handSphereMap, Transform hoverLocation, Transform grabLocation)
Parameters
hand: IHand
openHand: IHand
handSphereMap: IHandSphereMap
hoverLocation: Transform
grabLocation: Transform
Returns
void
InjectGrabLocation ( grabLocation )
Signature
void InjectGrabLocation(Transform grabLocation)
Parameters
grabLocation: Transform
Returns
void
InjectHand ( hand )
Signature
void InjectHand(IHand hand)
Parameters
hand: IHand
Returns
void
InjectHandSphereMap ( handSphereMap )
Signature
void InjectHandSphereMap(IHandSphereMap handSphereMap)
Parameters
handSphereMap: IHandSphereMap
Returns
void
InjectHoverLocation ( hoverLocation )
Signature
void InjectHoverLocation(Transform hoverLocation)
Parameters
hoverLocation: Transform
Returns
void
InjectOpenHand ( openHand )
Signature
void InjectOpenHand(IHand openHand)
Parameters
openHand: IHand
Returns
void
InjectOptionalCurlDeltaThreshold ( threshold )
Signature
void InjectOptionalCurlDeltaThreshold(float threshold)
Parameters
threshold: float
Returns
void
InjectOptionalCurlTimeThreshold ( seconds )
Signature
void InjectOptionalCurlTimeThreshold(float seconds)
Parameters
seconds: float
Returns
void
InjectOptionalGrabPrerequisite ( grabPrerequisite )
Signature
void InjectOptionalGrabPrerequisite(IActiveState grabPrerequisite)
Parameters
grabPrerequisite: IActiveState
Returns
void
InjectOptionalIterations ( iterations )
Signature
void InjectOptionalIterations(int iterations)
Parameters
iterations: int
Returns
void
InjectOptionalMinHoverDistance ( minHoverDistance )
Signature
void InjectOptionalMinHoverDistance(float minHoverDistance)
Parameters
minHoverDistance: float
Returns
void
InjectOptionalTimeProvider ( timeProvider )
Signature
void InjectOptionalTimeProvider(Func< float > timeProvider)
Parameters
timeProvider: Func< float >
Returns
void
IsFingerLocked ( finger )
Signature
bool IsFingerLocked(HandFinger finger)
Parameters
finger: HandFinger
Returns
bool
SetTimeProvider ( timeProvider )
Sets a function that returns the current time in seconds.
Signature
void SetTimeProvider(Func< float > timeProvider)
Parameters
timeProvider: Func< float >
Returns
void
Unselect ()
Signature
override void Unselect()
Returns
override void