Megosztás a következőn keresztül:


CInterpolatorBase-osztály

Megjegyzés:

A Microsoft Foundation Classes (MFC) könyvtár továbbra is támogatott. A továbbiakban azonban nem adunk hozzá funkciókat, és nem frissítjük a dokumentációt.

Egy visszahívást valósít meg, amelyet az Animation API hív meg, amikor ki kell számítania egy animációs változó új értékét.

Szemantika

class CInterpolatorBase : public CUIAnimationInterpolatorBase<CInterpolatorBase>;

Tagok

Nyilvános konstruktorok

Név Description
CInterpolatorBase::CInterpolatorBase Felépíti az CInterpolatorBase objektumot.

Nyilvános metódusok

Név Description
CInterpolatorBase::CreateInstance Létrehoz egy példányt CInterpolatorBase , és egy mutatót tárol az egyéni interpolátorhoz, amely kezeli az eseményeket.
CInterpolatorBase::GetDependencies Lekéri az interpolátor függőségeit. (Felülbírálások CUIAnimationInterpolatorBase::GetDependencies.)
CInterpolatorBase::GetDuration Lekéri az interpolátor időtartamát. (Felülbírálások CUIAnimationInterpolatorBase::GetDuration.)
CInterpolatorBase::GetFinalValue Lekéri azt a végső értéket, amelyhez az interpolátor vezet. (Felülbírálások CUIAnimationInterpolatorBase::GetFinalValue.)
CInterpolatorBase::InterpolateValue Interpolálja az értéket egy adott eltolásnál (felülbírálások CUIAnimationInterpolatorBase::InterpolateValue.)
CInterpolatorBase::InterpolateVelocity Interpolálja a sebességet egy adott eltolásnál (felülbírálások CUIAnimationInterpolatorBase::InterpolateVelocity.)
CInterpolatorBase::SetCustomInterpolator Az eseményeket kezelő egyéni interpolátorra mutató mutatót tárol.
CInterpolatorBase::SetDuration Az interpolátor időtartamának beállítása (felülbírálások CUIAnimationInterpolatorBase::SetDuration.)
CInterpolatorBase::SetInitialValueAndVelocity Beállítja az interpolátor kezdeti értékét és sebességét. (Felülbírálások CUIAnimationInterpolatorBase::SetInitialValueAndVelocity.)

Megjegyzések

Ez a kezelő akkor jön létre és továbbítja az IUIAnimationTransitionFactory::CreateTransition objektum létrehozásakor, amikor CCustomTransition az animációs inicializálási folyamat részeként jön létre (első CAnimationController::AnimateGrouplépésként). Általában nem kell közvetlenül használnia ezt az osztályt, csak az összes eseményt egy CCustomInterpolator-származtatott osztályhoz továbbítja, amelynek mutatója a konstruktornak CCustomTransitionvan átadva.

Öröklési hierarchia

CUIAnimationCallbackBase

CUIAnimationInterpolatorBase

CInterpolatorBase

Requirements

Fejléc: afxanimationcontroller.h

CInterpolatorBase::CInterpolatorBase

A CInterpolatorBase objektumot hozza létre.

CInterpolatorBase();

CInterpolatorBase::CreateInstance

Létrehozza a CInterpolatorBase egy példányát, és egy mutatót tárol az egyéni interpolátorhoz, amely eseményeket kezel.

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

Paraméterek

pInterpolator
Mutató az egyéni interpolátorhoz.

ppHandler
Kimeneti. A függvény visszatérésekor a CInterpolatorBase példányára mutató mutatót tartalmaz.

Visszaadott érték

CInterpolatorBase::GetDependencies

Lekéri az interpolátor függőségeit.

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

Paraméterek

initialValueDependencies
Kimeneti. Az interpolátor azon aspektusai, amelyek a SetInitialValueAndVelocitynek átadott kezdeti értéktől függenek.

initialVelocityDependencies
Kimeneti. Az interpolátor azon aspektusai, amelyek a SetInitialValueAndVelocitynek átadott kezdeti sebességtől függenek.

durationDependencies
Kimeneti. Az interpolátor azon aspektusai, amelyek a SetDurationnak átadott időtartamtól függenek.

Visszaadott érték

Ha a metódus sikeres, S_OK ad vissza. E_FAIL ad vissza, ha a CCustomInterpolator nincs beállítva, vagy az egyéni implementáció HAMIS értéket ad vissza a GetDependencies metódusból.

CInterpolatorBase::GetDuration

Lekéri az interpolátor időtartamát.

IFACEMETHOD(GetDuration)(__out UI_ANIMATION_SECONDS* duration);

Paraméterek

időtartam
Kimeneti. Az áttűnés időtartama másodpercben.

Visszaadott érték

Ha a metódus sikeres, S_OK ad vissza. E_FAIL ad vissza, ha a CCustomInterpolator nincs beállítva, vagy az egyéni implementáció HAMIS értéket ad vissza a GetDuration metódusból.

CInterpolatorBase::GetFinalValue

Lekéri azt a végső értéket, amelyhez az interpolátor vezet.

IFACEMETHOD(GetFinalValue)(__out DOUBLE* value);

Paraméterek

value
Kimeneti. Egy változó végső értéke az áttűnés végén.

Visszaadott érték

Ha a metódus sikeres, S_OK ad vissza. E_FAIL ad vissza, ha a CCustomInterpolator nincs beállítva, vagy az egyéni implementáció HAMIS értéket ad vissza a GetFinalValue metódusból.

CInterpolatorBase::InterpolateValue

Interpolálja az értéket egy adott eltolásnál

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

Paraméterek

ellensúlyoz
Az áttűnés kezdetétől kezdődő eltolás. Az eltolás mindig nagyobb vagy egyenlő nullánál, és kisebb, mint az áttűnés időtartama. Ez a metódus nem lesz meghívva, ha az áttűnés időtartama nulla.

value
Kimeneti. Az interpolált érték.

Visszaadott érték

Ha a metódus sikeres, S_OK ad vissza. E_FAIL ad vissza, ha a CCustomInterpolator nincs beállítva, vagy az egyéni implementáció HAMIS értéket ad vissza az InterpolateValue metódusból.

CInterpolatorBase::InterpolateVelocity

Interpolálja a sebességet egy adott eltolásnál

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

Paraméterek

ellensúlyoz
Az áttűnés kezdetétől kezdődő eltolás. Az eltolás mindig nagyobb vagy egyenlő nullánál, és kisebb vagy egyenlő az áttűnés időtartamánál. Ez a metódus nem lesz meghívva, ha az áttűnés időtartama nulla.

Sebesség
Kimeneti. A változó sebessége az eltolásnál.

Visszaadott érték

Ha a metódus sikeres, S_OK ad vissza. E_FAIL ad vissza, ha a CCustomInterpolator nincs beállítva, vagy az egyéni implementáció HAMIS értéket ad vissza az InterpolateVelocity metódusból.

CInterpolatorBase::SetCustomInterpolator

Az eseményeket kezelő egyéni interpolátorra mutató mutatót tárol.

void SetCustomInterpolator(CCustomInterpolator* pInterpolator);

Paraméterek

pInterpolator
Mutató az egyéni interpolátorhoz.

CInterpolatorBase::SetDuration

Az interpolátor időtartamának beállítása

IFACEMETHOD(SetDuration)(__in UI_ANIMATION_SECONDS duration);

Paraméterek

időtartam
Az áttűnés időtartama.

Visszaadott érték

Ha a metódus sikeres, S_OK ad vissza. E_FAIL ad vissza, ha a CCustomInterpolator nincs beállítva, vagy az egyéni implementáció HAMIS értéket ad vissza a SetDuration metódusból.

CInterpolatorBase::SetInitialValueAndVelocity

Beállítja az interpolátor kezdeti értékét és sebességét.

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

Paraméterek

initialValue
A változó értéke az áttűnés kezdetén.

initialVelocity
A változó sebessége az átmenet kezdetén.

Visszaadott érték

Ha a metódus sikeres, S_OK ad vissza. E_FAIL ad vissza, ha a CCustomInterpolator nincs beállítva, vagy az egyéni implementáció HAMIS értéket ad vissza a SetInitialValueAndVelocity metódusból.

Lásd még

osztályok