Class ManipulationHandlerTests
Inherited Members
Namespace: Microsoft.MixedReality.Toolkit.Tests
Assembly: cs.temp.dll.dll
Syntax
public class ManipulationHandlerTests
Methods
ManipulationHandlerDisableObject()
Ensure that while manipulating an object, if that object gets deactivated, that manipulation no longer moves that object.
Declaration
public IEnumerator ManipulationHandlerDisableObject()
Returns
Type | Description |
---|---|
IEnumerator |
ManipulationHandlerForceRelease()
Test creates an object with manipulationhandler verifies translation with articulated hand as well as forcefully ending of the manipulation from gaze provider.
Declaration
public IEnumerator ManipulationHandlerForceRelease()
Returns
Type | Description |
---|---|
IEnumerator |
ManipulationHandlerGazeHover()
Test creating ManipulationHandler and receiving hover enter/exit events from gaze provider.
Declaration
public IEnumerator ManipulationHandlerGazeHover()
Returns
Type | Description |
---|---|
IEnumerator |
ManipulationHandlerInstantiate()
Test creating adding a ManipulationHandler to GameObject programmatically. Should be able to run scene without getting any exceptions.
Declaration
public IEnumerator ManipulationHandlerInstantiate()
Returns
Type | Description |
---|---|
IEnumerator |
ManipulationHandlerMinMaxScale()
This tests the minimum and maximum scaling for manipulation. This test will scale a cube with two hand manipulation and ensure that maximum and minimum scales are not exceeded.
Declaration
public IEnumerator ManipulationHandlerMinMaxScale()
Returns
Type | Description |
---|---|
IEnumerator |
ManipulationHandlerMoveYAxisGGV()
This test first moves the hand a set amount along the x-axis, records its x position, then moves it the same amount along the y-axis and records its y position. Given no constraints on manipulation, we expect these values to be the same. This test was added as a change to pointer behaviour made GGV manipulation along the y-axis sluggish.
Declaration
public IEnumerator ManipulationHandlerMoveYAxisGGV()
Returns
Type | Description |
---|---|
IEnumerator |
ManipulationHandlerOneHandMoveFar()
This tests the one hand far movement while camera (character) is moving around. The test will check the offset between object pivot and grab point and make sure we're not drifting out of the object on pointer rotation - this test is the same for all objects that won't change their orientation to camera while camera / pointer rotates as this will modify the far interaction grab point
Declaration
public IEnumerator ManipulationHandlerOneHandMoveFar()
Returns
Type | Description |
---|---|
IEnumerator |
ManipulationHandlerOneHandMoveNear()
This tests the one hand near movement while camera (character) is moving around. The test will check the offset between object pivot and grab point and make sure we're not drifting out of the object on pointer rotation - this test should be the same in all rotation setups
Declaration
public IEnumerator ManipulationHandlerOneHandMoveNear()
Returns
Type | Description |
---|---|
IEnumerator |
ManipulationHandlerOneHandRotateWithConstraint()
This tests the one hand near rotation and applying different rotation constraints to the object. NOTE: This tests both LOCAL and WORLD SPACE rotation.
Declaration
public IEnumerator ManipulationHandlerOneHandRotateWithConstraint()
Returns
Type | Description |
---|---|
IEnumerator |
ManipulationHandlerOriginOffset()
This test records the poses and scales of an object after various forms of manipulation, once when the object origin is at the mesh centre and again when the origin is offset from the mesh. The test then compares these poses and scales in order to ensure that they are about equal.
Declaration
public IEnumerator ManipulationHandlerOriginOffset()
Returns
Type | Description |
---|---|
IEnumerator |
ManipulationHandlerPositionlessController()
For positionless input sources that use gaze, such as xbox controller, pointer position will be coincident with the head position. This was causing issues with manipulation handler, as the distance between the pointer and the head is taken as part of the move logic. This test simulates a positionless input source by using GGV hands and setting the hand position to be the head position. It then ensures that there is no weird behaviour as a result of this.
Declaration
public IEnumerator ManipulationHandlerPositionlessController()
Returns
Type | Description |
---|---|
IEnumerator |
ManipulationHandlerRotateAboutObjectCenter()
Ensure that a manipulated object has the same rotation as the hand when RotateAboutObjectCenter is used
Declaration
public IEnumerator ManipulationHandlerRotateAboutObjectCenter()
Returns
Type | Description |
---|---|
IEnumerator |
ManipulationHandlerRotateHeadGGV()
This test rotates the head without moving the hand. This test is set up to test using the Gestures input simulation mode as this is where we observed issues with this. If the head rotates, without moving the hand, the grabbed object should not move.
Declaration
public IEnumerator ManipulationHandlerRotateHeadGGV()
Returns
Type | Description |
---|---|
IEnumerator |
ManipulationHandlerRotateWithUser()
Tests MaintainRotationToUser mode of ManipulationHandler (OneHandedOnly) MaintainRotationToUser should only align with user / camera on x / y and not apply rotations in z
Declaration
public IEnumerator ManipulationHandlerRotateWithUser()
Returns
Type | Description |
---|---|
IEnumerator |
ManipulationHandlerThrow()
Test validates throw behavior on manipulation handler. Box with disabled gravity should travel a certain distance when being released from grab during hand movement
Declaration
public IEnumerator ManipulationHandlerThrow()
Returns
Type | Description |
---|---|
IEnumerator |
Setup()
Declaration
public void Setup()
TearDown()
Declaration
public void TearDown()