다음을 통해 공유


CInterpolatorBase 클래스

비고

MFC(Microsoft Foundation Classs) 라이브러리는 계속 지원됩니다. 그러나 더 이상 기능을 추가하거나 설명서를 업데이트하지 않습니다.

애니메이션 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을 재정의합니다.)

설명

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

반환 값

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에 전달된 기간에 따라 달라지는 보간기의 양상입니다.

반환 값

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

CInterpolatorBase::GetDuration

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

IFACEMETHOD(GetDuration)(__out UI_ANIMATION_SECONDS* duration);

매개 변수

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

반환 값

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

CInterpolatorBase::GetFinalValue

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

IFACEMETHOD(GetFinalValue)(__out DOUBLE* value);

매개 변수

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

반환 값

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

CInterpolatorBase::InterpolateValue

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

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

매개 변수

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

value
출력 보간된 값입니다.

반환 값

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

CInterpolatorBase::InterpolateVelocity

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

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

매개 변수

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

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

반환 값

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

CInterpolatorBase::SetCustomInterpolator

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

void SetCustomInterpolator(CCustomInterpolator* pInterpolator);

매개 변수

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

CInterpolatorBase::SetDuration

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

IFACEMETHOD(SetDuration)(__in UI_ANIMATION_SECONDS duration);

매개 변수

duration
전환 기간입니다.

반환 값

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

CInterpolatorBase::SetInitialValueAndVelocity

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

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

매개 변수

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

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

반환 값

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

참고 항목

클래스