SpatialPointerInteractionSourcePose SpatialPointerInteractionSourcePose SpatialPointerInteractionSourcePose SpatialPointerInteractionSourcePose Class

Definition

Some information relates to pre-released product which may be substantially modified before it’s commercially released. Microsoft makes no warranties, express or implied, with respect to the information provided here.

Prerelease APIs are identified by a Prerelease label.

[Contains prerelease APIs.]
Represents a motion controller's pointer pose in relation to its surroundings.

public : sealed class SpatialPointerInteractionSourcePose : ISpatialPointerInteractionSourcePosepublic sealed class SpatialPointerInteractionSourcePose : ISpatialPointerInteractionSourcePosePublic NotInheritable Class SpatialPointerInteractionSourcePose Implements ISpatialPointerInteractionSourcePose// You can use this class in JavaScript.
Attributes
Windows 10 requirements
Device family
Windows 10 Creators Update (introduced v10.0.15063.0)
API contract
Windows.Foundation.UniversalApiContract (introduced v4)

Remarks

Windows Mixed Reality supports motion controllers in a variety of form factors, with each controller's design differing in its relationship between the user's hand position and the natural "forward" direction that apps should use for pointing when rendering the controller.

To better represent these controllers, there are two kinds of poses you can investigate for each interaction source.

The grip pose represents the location of either the palm of a hand detected by a HoloLens, or the palm holding a motion controller. On immersive headsets, this pose is best used to render the user's hand or an object held in the user's hand, such as a sword or gun. The grip pose is represented by the position, orientation and velocity properties directly within this type.

The pointer pose represents the tip of a motion controller pointing forward. This pose is best used to raycast when pointing at UI when you are rendering the controller model itself. The pointer pose can be accessed through the SourcePointerPose property.

Properties

ForwardDirection ForwardDirection ForwardDirection ForwardDirection

Gets the forward direction of the motion controller's pointer pose in the specified coordinate system, as a unit vector.

public : Vector3 ForwardDirection { get; }public Vector3 ForwardDirection { get; }Public ReadOnly Property ForwardDirection As Vector3// You can use this property in JavaScript.
Value
Vector3 Vector3 Vector3 Vector3

The forward direction unit vector.

Orientation Orientation Orientation Orientation

Prerelease. Gets the orientation of the motion controller's pointer pose in the specified coordinate system.

public : Quaternion Orientation { get; }public Quaternion Orientation { get; }Public ReadOnly Property Orientation As Quaternion// You can use this property in JavaScript.
Value
Quaternion Quaternion Quaternion Quaternion

The orientation.

Additional features and requirements
Device family
Windows 10 Insider Preview (introduced v10.0.16257.0)
API contract
Windows.Foundation.UniversalApiContract (introduced v5)

Position Position Position Position

Gets the position of the motion controller's pointer pose in the specified coordinate system.

public : Vector3 Position { get; }public Vector3 Position { get; }Public ReadOnly Property Position As Vector3// You can use this property in JavaScript.
Value
Vector3 Vector3 Vector3 Vector3

The position.

PositionAccuracy PositionAccuracy PositionAccuracy PositionAccuracy

Prerelease. Gets the accuracy of an interaction source's positional tracking.

public : SpatialInteractionSourcePositionAccuracy PositionAccuracy { get; }public SpatialInteractionSourcePositionAccuracy PositionAccuracy { get; }Public ReadOnly Property PositionAccuracy As SpatialInteractionSourcePositionAccuracy// You can use this property in JavaScript.
Additional features and requirements
Device family
Windows 10 Insider Preview (introduced v10.0.16257.0)
API contract
Windows.Foundation.UniversalApiContract (introduced v5)

Remarks

When a visually-tracked motion controller loses tracking, the system may continue to synthesize a position, with the precise mechanism of synthesis varying based on the tracking technology. Apps may check this property to determine when the position does not represent the nominal positional accuracy for that controller.

For example, an app may choose to accept all positions when pointing at menus or interacting with world objects. Then, when the user starts painting in the world around them, the app may choose to accept only positions with a High accuracy, to ensure the quality of the painting remains high.

UpDirection UpDirection UpDirection UpDirection

Gets the up direction that orients the motion controller's pointer pose in the specified coordinate system, as a unit vector.

public : Vector3 UpDirection { get; }public Vector3 UpDirection { get; }Public ReadOnly Property UpDirection As Vector3// You can use this property in JavaScript.
Value
Vector3 Vector3 Vector3 Vector3

The up direction unit vector.