InteractionTracker.TryUpdatePosition 方法

定义

重载

TryUpdatePosition(Vector3, InteractionTrackerClampingOption, InteractionTrackerPositionUpdateOption)

尝试使用指定的固定选项更新 InteractionTracker 的位置。

TryUpdatePosition(Vector3)

尝试更新 InteractionTracker 的位置。

TryUpdatePosition 方法将 InteractionTracker 的位置更新为指定为参数的 Vector3 位置。 TryUpdatePosition 用于以声明方式定义 InteractionTracker 在任意时间点的位置, (在开始时、从某些进入状态的事件等 ) 。 可以从 Idle、CustomAnimation 或 Inertia 状态调用 TryUpdatePosition - 这样做会将 InteractionTracker 的位置移动到定义的位置并进入空闲状态。

TryUpdatePosition(Vector3, InteractionTrackerClampingOption)

尝试使用指定的固定选项更新 InteractionTracker 的位置。

TryUpdatePosition(Vector3, InteractionTrackerClampingOption, InteractionTrackerPositionUpdateOption)

尝试使用指定的固定选项更新 InteractionTracker 的位置。

public:
 virtual int TryUpdatePosition(float3 value, InteractionTrackerClampingOption option, InteractionTrackerPositionUpdateOption posUpdateOption) = TryUpdatePosition;
/// [Windows.Foundation.Metadata.Overload("TryUpdatePositionWithOption")]
int TryUpdatePosition(float3 const& value, InteractionTrackerClampingOption const& option, InteractionTrackerPositionUpdateOption const& posUpdateOption);
[Windows.Foundation.Metadata.Overload("TryUpdatePositionWithOption")]
public int TryUpdatePosition(Vector3 value, InteractionTrackerClampingOption option, InteractionTrackerPositionUpdateOption posUpdateOption);
function tryUpdatePosition(value, option, posUpdateOption)
Public Function TryUpdatePosition (value As Vector3, option As InteractionTrackerClampingOption, posUpdateOption As InteractionTrackerPositionUpdateOption) As Integer

参数

value
Vector3 Vector3

float3

InteractionTracker 的新位置。

option
InteractionTrackerClampingOption

一个 值,该值指定如何将值固定到最大值和最小值。

posUpdateOption
InteractionTrackerPositionUpdateOption

一个 值,该值指定是否应允许已运行的自定义缩放动画继续运行。

返回

Int32

int

返回请求 ID。 在状态转换时,导致状态更改的请求将包含在参数中。 这些 ID 将从 1 开始,并在应用程序的生存期内随着每次尝试调用而增加。

属性

Windows 要求

设备系列
Windows 10, version 2004 (在 10.0.19041.0 中引入)
API contract
Windows.Foundation.UniversalApiContract (在 v10.0 中引入)

适用于

TryUpdatePosition(Vector3)

尝试更新 InteractionTracker 的位置。

TryUpdatePosition 方法将 InteractionTracker 的位置更新为指定为参数的 Vector3 位置。 TryUpdatePosition 用于以声明方式定义 InteractionTracker 在任意时间点的位置, (在开始时、从某些进入状态的事件等 ) 。 可以从 Idle、CustomAnimation 或 Inertia 状态调用 TryUpdatePosition - 这样做会将 InteractionTracker 的位置移动到定义的位置并进入空闲状态。

public:
 virtual int TryUpdatePosition(float3 value) = TryUpdatePosition;
int TryUpdatePosition(float3 const& value);
public int TryUpdatePosition(Vector3 value);
function tryUpdatePosition(value)
Public Function TryUpdatePosition (value As Vector3) As Integer

参数

value
Vector3 Vector3

float3

InteractionTracker 的新位置。

返回

Int32

int

返回请求 ID。 在状态转换时,导致状态更改的请求将包含在参数中。 这些 ID 将从 1 开始,并在应用程序的生存期内随着每次尝试调用而增加。

示例

void SetupInteractionTracker()
{
  // Setup InteractionTracker
  _tracker = InteractionTracker.Create(_compositor);
  _interactionSource.PositionXSourceMode = InteractionSourceMode.EnabledWithInertia;
  _interactionSource.PositionYSourceMode = InteractionSourceMode.EnabledWithInertia;

  _tracker.InteractionSources.Add(_interactionSource);
  _tracker.PositionInertiaDecayRate = new Vector3(0.95f);

  // Update the position of InteractionTracker, so doesn’t start at (0,0)
  _tracker.TryUpdatePosition(new Vector3(50f));
}

注解

如果 InteractionTracker 处于交互状态 (用户主动操作) ,并且调用了 TryUpdatePosition,则系统将忽略此请求 - 当发生这种情况时会触发一个可以侦听的事件。 如果从其他状态之一发送,请侦听为 IdleStateEntered 触发的事件,并检查 RequestId 属性,该属性标识哪个请求触发了回调。 下表总结了在特定状态下调用此方法时的预期行为:

当前状态业务成效
闲置属性更新到请求的值,无状态更改
正在交互忽略请求
惯性属性更新到请求的值,状态更改为空闲
CustomAnimation属性更新到请求的值,状态更改为空闲

适用于

TryUpdatePosition(Vector3, InteractionTrackerClampingOption)

尝试使用指定的固定选项更新 InteractionTracker 的位置。

public:
 virtual int TryUpdatePosition(float3 value, InteractionTrackerClampingOption option) = TryUpdatePosition;
/// [Windows.Foundation.Metadata.Overload("TryUpdatePositionWithOption")]
int TryUpdatePosition(float3 const& value, InteractionTrackerClampingOption const& option);
[Windows.Foundation.Metadata.Overload("TryUpdatePositionWithOption")]
public int TryUpdatePosition(Vector3 value, InteractionTrackerClampingOption option);
function tryUpdatePosition(value, option)
Public Function TryUpdatePosition (value As Vector3, option As InteractionTrackerClampingOption) As Integer

参数

value
Vector3 Vector3

float3

InteractionTracker 的新位置。

option
InteractionTrackerClampingOption

一个 值,该值指定如何将值固定到最大值和最小值。

返回

Int32

int

返回请求 ID。 在状态转换时,导致状态更改的请求将包含在参数中。 这些 ID 将从 1 开始,并在应用程序的生存期内随着每次尝试调用而增加。

属性

Windows 要求

设备系列
Windows 10, version 1809 (在 10.0.17763.0 中引入)
API contract
Windows.Foundation.UniversalApiContract (在 v7.0 中引入)

适用于