API reference
API reference
Select your platform
No SDKs available
No versions available

SphereGrabSurface Class

Extends MonoBehaviour, IGrabSurface
Specifies an entire sphere around an object in which the grip point is valid.
One of the main advantages of spheres is that the rotation of the hand pose does not really matters, as it will always fit the surface correctly.

Protected Fields

Member Functions

The reference pose of the surface.
It defines the radius of the sphere as the point from the relative transform to the reference pose to ensure that the sphere covers this pose.
Parameters
relativeTo
The reference transform to apply the surface to
Returns
Pose in world space
The center of the sphere in world coordinates.
Parameters
relativeTo
The reference transform to apply the surface to
Returns
Position in world space
void SetCentre
( Vector3 point,
Transform relativeTo )
The radius of the sphere, this is automatically calculated as the distance between the center and the original grip pose.
Parameters
relativeTo
The reference transform to apply the surface to
Returns
Distance in world space
The direction of the sphere, measured from the center to the original grip position.
Parameters
relativeTo
The reference transform to apply the surface to
Returns
Direction in world space
Method for mirroring a Pose around the surface.
Different surfaces will prefer mirroring along different axis.
Parameters
gripPose
The Pose to be mirrored.
relativeTo
Reference transform to mirror the pose around
Returns
A new pose mirrored at this surface.
Finds the Pose at the surface that is the closest to the given ray.
Parameters
targetRay
Ray searching for the nearest snap pose
bestPose
The best found pose at the surface.
relativeTo
Reference transform to measure the poses against
Returns
True if the pose was found
Finds the Pose at the surface that is the closest to the given pose.
Parameters
targetPose
The root pose to find the nearest to.
bestPose
The best found pose at the surface.<
scoringModifier
Weight used to decide which target pose to select
relativeTo
Reference transform to measure the poses against
Returns
The score indicating how good the found pose was, -1 for invalid result.
Finds the Pose at the surface that is the closest to the given pose.
Parameters
targetPose
The root pose to find the nearest to.
offset
The offset from the root, for accurate scoring
bestPose
The best found pose at the surface.<
scoringModifier
Weight used to decide which target pose to select
relativeTo
Reference transform to measure the poses against
Returns
The score indicating how good the found pose was, -1 for invalid result.
Creates a new IGrabSurface under the selected gameobject that is a mirror version of the current.
Parameters
gameObject
The gameobject in which to place the new IGrabSurface.
Returns
A mirror of this IGrabSurface.
Creates a new IGrabSurface under the selected gameobject with the same data as this one.
Parameters
gameObject
The gameobject in which to place the new IGrabSurface.
Returns
A clone of this IGrabSurface.
void InjectAllSphereSurface
Transform relativeTo )
void InjectData
void InjectRelativeTo
( Transform relativeTo )

Protected Functions

virtual void Reset ( )
virtual void Start ( )
Vector3 NearestPointInSurface
( Vector3 targetPosition,
Transform relativeTo )
Pose MinimalRotationPoseAtSurface
( in Pose userPose,
Transform relativeTo )
Pose MinimalTranslationPoseAtSurface
( in Pose userPose,
Transform relativeTo )
Quaternion RotationAtPoint
( Vector3 surfacePoint,
Quaternion baseRot,
Quaternion desiredRotation,
Transform relativeTo )
Did you find this page helpful?