Tanoda
Leap.Unity.Interaction.IGraspedPoseHandler Interface Reference

An IGraspedPoseHandler specifies where an object grasped by a Leap hand or controller (or multiple hands/controllers) should move as the grasping controllers(s) move. The default implementation provided by the Interaction Engine is the KabschGraspedPose, which produces a physically-intuitive following motion for the object no matter how a grasping hand moves. More...

Inheritance diagram for Leap.Unity.Interaction.IGraspedPoseHandler:
Leap.Unity.Interaction.KabschGraspedPose

Public Member Functions

void AddController (InteractionController controller)
 Called when a new InteractionController begins grasping a certain object. The controller or Leap hand should be included in the held pose calculation. More...
 
void RemoveController (InteractionController controller)
 Called when an InteractionController stops grasping a certain object; the controller should no longer be included in the held pose calculation. More...
 
void ClearControllers ()
 Called e.g. if the InteractionBehaviour is set not to move while being grasped; this should clear any hands to be included in the grasping position calculation. More...
 
void GetGraspedPosition (out Vector3 position, out Quaternion rotation)
 Calculate the best holding position and orientation given the current state of all InteractionControllers (added via AddController()). More...
 

Detailed Description

An IGraspedPoseHandler specifies where an object grasped by a Leap hand or controller (or multiple hands/controllers) should move as the grasping controllers(s) move. The default implementation provided by the Interaction Engine is the KabschGraspedPose, which produces a physically-intuitive following motion for the object no matter how a grasping hand moves.

IGraspedPoseHandlers do not actually move an object; they only calculate where an object should be moved. Actually moving the object is the concern of an IGraspedMovementHandler.

Definition at line 26 of file IGraspedPoseHandler.cs.

Member Function Documentation

◆ AddController()

void Leap.Unity.Interaction.IGraspedPoseHandler.AddController ( InteractionController  controller)

Called when a new InteractionController begins grasping a certain object. The controller or Leap hand should be included in the held pose calculation.

Implemented in Leap.Unity.Interaction.KabschGraspedPose.

◆ ClearControllers()

void Leap.Unity.Interaction.IGraspedPoseHandler.ClearControllers ( )

Called e.g. if the InteractionBehaviour is set not to move while being grasped; this should clear any hands to be included in the grasping position calculation.

Implemented in Leap.Unity.Interaction.KabschGraspedPose.

◆ GetGraspedPosition()

void Leap.Unity.Interaction.IGraspedPoseHandler.GetGraspedPosition ( out Vector3  position,
out Quaternion  rotation 
)

Calculate the best holding position and orientation given the current state of all InteractionControllers (added via AddController()).

Implemented in Leap.Unity.Interaction.KabschGraspedPose.

◆ RemoveController()

void Leap.Unity.Interaction.IGraspedPoseHandler.RemoveController ( InteractionController  controller)

Called when an InteractionController stops grasping a certain object; the controller should no longer be included in the held pose calculation.

Implemented in Leap.Unity.Interaction.KabschGraspedPose.


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