다음을 통해 공유


InteractionTracker.TryUpdateScale(Single, Vector3) 메서드

정의

배율을 지정된 값으로 업데이트하려고 시도합니다.

TryUpdateScale 메서드는 InteractionTracker 의 배율 위치를 매개 변수로 지정된 배율 위치 및 중심점으로 업데이트합니다. TryUpdateScale은 특정 시점(시작 시, 일부 상태 입력 이벤트 등)에서 InteractionTracker 의 규모를 선언적으로 정의하는 데 사용됩니다. TryUpdateScale은 유휴 상태, CustomAnimation 또는 관성 상태에서 호출할 수 있습니다. 이렇게 하면 InteractionTracker 의 배율 위치가 정의된 위치로 이동하고 유휴 상태가 됩니다.

public:
 virtual int TryUpdateScale(float value, float3 centerPoint) = TryUpdateScale;
int TryUpdateScale(float const& value, float3 const& centerPoint);
public int TryUpdateScale(float value, Vector3 centerPoint);
function tryUpdateScale(value, centerPoint)
Public Function TryUpdateScale (value As Single, centerPoint As Vector3) As Integer

매개 변수

value
Single

float

배율에 대한 새 값입니다.

centerPoint
Vector3 Vector3

float3

새 중심점입니다.

반환

Int32

int

요청 ID를 반환합니다. 상태 전환 시 상태 변경을 발생시킨 요청이 인수에 포함됩니다. 이러한 ID는 1에서 시작하여 애플리케이션 수명 동안 각 try 호출에 따라 증가합니다.

예제

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 scale position of InteractionTracker
  _tracker.TryUpdateScale(0.5f, new Vector3(50f));
}

설명

InteractionTracker가 상호 작용 상태이고(사용자가 적극적으로 조작하고 있음) TryUpdateScale이 호출되면 시스템에서 이 요청을 무시합니다. 이 경우 수신 대기할 수 있는 이벤트가 발생합니다. 다른 상태 중 하나에서 전송된 경우 IdleStateEntered에 대해 발생한 이벤트를 수신 대기하고 콜백을 트리거한 요청을 식별하는 RequestID 속성을 검사.

아래 표에는 이 메서드가 특정 상태에서 호출될 때 예상되는 동작이 요약되어 있습니다.

현재 상태결과
유휴 상태요청된 값으로 속성 업데이트, 상태 변경 없음
상호 작용 중요청이 무시됨
관성요청된 값에 대한 속성 업데이트, 유휴 상태 변경
CustomAnimation요청된 값에 대한 속성 업데이트, 유휴 상태 변경

적용 대상