다음을 통해 공유


CInterpolatorBase 클래스

애니메이션 API에서 애니메이션 변수의 새 값을 계산해야 할 때 호출하는 콜백을 구현합니다.

구문

class CInterpolatorBase : public CUIAnimationInterpolatorBase<CInterpolatorBase>;

멤버

공용 생성자

속성 설명
CInterpolatorBase::CInterpolatorBase 개체를 CInterpolatorBase 생성합니다.

공용 메서드

이름 설명
CInterpolatorBase::CreateInstance 인스턴스 CInterpolatorBase 를 만들고 이벤트를 처리할 사용자 지정 보간기에 대한 포인터를 저장합니다.
CInterpolatorBase::GetDependencies 보간자의 종속성을 가져옵니다. ( CUIAnimationInterpolatorBase::GetDependencies을 재정의합니다.)
CInterpolatorBase::GetDuration 보간기의 기간을 가져옵니다. ( CUIAnimationInterpolatorBase::GetDuration을 재정의합니다.)
CInterpolatorBase::GetFinalValue 보간기가 이끄는 최종 값을 가져옵니다. ( CUIAnimationInterpolatorBase::GetFinalValue을 재정의합니다.)
CInterpolatorBase::InterpolateValue 지정된 오프셋의 값을 보간합니다(재정의. CUIAnimationInterpolatorBase::InterpolateValue)
CInterpolatorBase::InterpolateVelocity 지정된 오프셋에서 속도를 보간합니다(재정의) CUIAnimationInterpolatorBase::InterpolateVelocity.
CInterpolatorBase::SetCustomInterpolator 이벤트를 처리할 사용자 지정 보간기에 대한 포인터를 저장합니다.
CInterpolatorBase::SetDuration 보간기의 기간을 설정합니다(재정의) CUIAnimationInterpolatorBase::SetDuration.
CInterpolatorBase::SetInitialValueAndVelocity 보간기의 초기 값 및 속도를 설정합니다. ( CUIAnimationInterpolatorBase::SetInitialValueAndVelocity을 재정의합니다.)

설명

이 처리기는 개체가 애니메이션 초기화 프로세스의 일부로 생성될 때CCustomTransition(시작됨CAnimationController::AnimateGroup) 만들어지고 전달 IUIAnimationTransitionFactory::CreateTransition 됩니다. 일반적으로 이 클래스를 직접 사용할 필요는 없으며 모든 이벤트를 -derived 클래스로 라우팅합니다 CCustomInterpolator. 이 클래스는 포인터가 생성자에 CCustomTransition전달됩니다.

상속 계층 구조

CUIAnimationCallbackBase

CUIAnimationInterpolatorBase

CInterpolatorBase

요구 사항

헤더: afxanimationcontroller.h

CInterpolatorBase::CInterpolatorBase

CInterpolatorBase 개체를 생성합니다.

CInterpolatorBase();

CInterpolatorBase::CreateInstance

CInterpolatorBase의 인스턴스를 만들고 이벤트를 처리할 사용자 지정 보간기에 대한 포인터를 저장합니다.

static COM_DECLSPEC_NOTHROW HRESULT CreateInstance(
    CCustomInterpolator* pInterpolator,
    IUIAnimationInterpolator** ppHandler);

매개 변수

pInterpolator
사용자 지정 보간기에 대한 포인터입니다.

ppHandler
출력. 함수가 반환되는 경우 CInterpolatorBase 인스턴스에 대한 포인터를 포함합니다.

Return Value

CInterpolatorBase::GetDependencies

보간자의 종속성을 가져옵니다.

IFACEMETHOD(GetDependencies)(
    __out UI_ANIMATION_DEPENDENCIES* initialValueDependencies,
    __out UI_ANIMATION_DEPENDENCIES* initialVelocityDependencies,
    __out UI_ANIMATION_DEPENDENCIES* durationDependencies);

매개 변수

initialValueDependencies
출력. SetInitialValueAndVelocity에 전달된 초기 값에 따라 달라지는 보간기의 양상입니다.

initialVelocityDependencies
출력. SetInitialValueAndVelocity에 전달된 초기 속도에 따라 달라지는 보간기의 측면입니다.

durationDependencies
출력. SetDuration에 전달된 기간에 따라 달라지는 보간기의 양상입니다.

Return Value

메서드가 성공하면 S_OK가 반환되고, CCustomInterpolator가 설정되지 않았거나 사용자 지정 구현이 GetDependencies 메서드에서 FALSE를 반환하는 경우 E_FAIL 반환합니다.

CInterpolatorBase::GetDuration

보간기의 기간을 가져옵니다.

IFACEMETHOD(GetDuration)(__out UI_ANIMATION_SECONDS* duration);

매개 변수

duration
출력. 전환 기간(초)입니다.

Return Value

메서드가 성공하면 S_OK가 반환되고, CCustomInterpolator가 설정되지 않았거나 사용자 지정 구현이 GetDuration 메서드에서 FALSE를 반환하는 경우 E_FAIL 반환합니다.

CInterpolatorBase::GetFinalValue

보간기가 이끄는 최종 값을 가져옵니다.

IFACEMETHOD(GetFinalValue)(__out DOUBLE* value);

매개 변수

value
출력. 전환이 끝날 때 변수의 최종 값입니다.

Return Value

메서드가 성공하면 S_OK가 반환되고, CCustomInterpolator가 설정되지 않았거나 사용자 지정 구현이 GetFinalValue 메서드에서 FALSE를 반환하는 경우 E_FAIL 반환합니다.

CInterpolatorBase::InterpolateValue

지정된 오프셋의 값을 보간합니다.

IFACEMETHOD(InterpolateValue)(
    __in UI_ANIMATION_SECONDS offset,
    __out DOUBLE* value);

매개 변수

offset
전환 시작부터의 오프셋입니다. 오프셋은 항상 0보다 크거나 같으며 전환 기간보다 작습니다. 전환 기간이 0이면 이 메서드가 호출되지 않습니다.

value
출력. 보간된 값입니다.

Return Value

메서드가 성공하면 S_OK가 반환되고, CCustomInterpolator가 설정되지 않았거나 사용자 지정 구현이 InterpolateValue 메서드에서 FALSE를 반환하는 경우 E_FAIL 반환합니다.

CInterpolatorBase::InterpolateVelocity

지정된 오프셋에서 속도를 보간합니다.

IFACEMETHOD(InterpolateVelocity)(
    __in UI_ANIMATION_SECONDS offset,
    __out DOUBLE* velocity);

매개 변수

offset
전환 시작부터의 오프셋입니다. 오프셋은 항상 0보다 크거나 같으며 전환 기간보다 작거나 같습니다. 전환 기간이 0이면 이 메서드가 호출되지 않습니다.

속도
출력. 오프셋에 있는 변수의 속도입니다.

Return Value

메서드가 성공하면 S_OK가 반환되고, CCustomInterpolator가 설정되지 않았거나 사용자 지정 구현이 InterpolateVelocity 메서드에서 FALSE를 반환하는 경우 E_FAIL 반환합니다.

CInterpolatorBase::SetCustomInterpolator

이벤트를 처리할 사용자 지정 보간기에 대한 포인터를 저장합니다.

void SetCustomInterpolator(CCustomInterpolator* pInterpolator);

매개 변수

pInterpolator
사용자 지정 보간기에 대한 포인터입니다.

CInterpolatorBase::SetDuration

보간기의 기간을 설정합니다.

IFACEMETHOD(SetDuration)(__in UI_ANIMATION_SECONDS duration);

매개 변수

duration
전환 기간입니다.

Return Value

메서드가 성공하면 S_OK가 반환되고, CCustomInterpolator가 설정되지 않았거나 사용자 지정 구현이 SetDuration 메서드에서 FALSE를 반환하면 E_FAIL 반환합니다.

CInterpolatorBase::SetInitialValueAndVelocity

보간기의 초기 값 및 속도를 설정합니다.

IFACEMETHOD(SetInitialValueAndVelocity)(
    __in DOUBLE initialValue,
    __in DOUBLE initialVelocity);

매개 변수

initialValue
전환 시작 시 변수의 값입니다.

initialVelocity
전환 시작 시 변수의 속도입니다.

Return Value

메서드가 성공하면 S_OK가 반환되고, CCustomInterpolator가 설정되지 않았거나 사용자 지정 구현이 SetInitialValueAndVelocity 메서드에서 FALSE를 반환하는 경우 E_FAIL 반환합니다.

참고 항목

클래스