Share via


CInterpolatorBase, classe

Implémente un rappel, qui est appelé par l'API d'animation lorsqu'elle doit calculer la nouvelle valeur d'une variable de l'animation.

Syntaxe

class CInterpolatorBase : public CUIAnimationInterpolatorBase<CInterpolatorBase>;

Membres

Constructeurs publics

Nom Description
CInterpolatorBase ::CInterpolatorBase Construit l’objet CInterpolatorBase .

Méthodes publiques

Nom Description
CInterpolatorBase ::CreateInstance Crée une instance et CInterpolatorBase stocke un pointeur vers un interpolateur personnalisé, qui gère les événements.
CInterpolatorBase ::GetDependencies Obtient les dépendances de l’interpolateur. (Substitue CUIAnimationInterpolatorBase::GetDependencies.)
CInterpolatorBase ::GetDuration Obtient la durée de l’interpolateur. (Substitue CUIAnimationInterpolatorBase::GetDuration.)
CInterpolatorBase ::GetFinalValue Obtient la valeur finale à laquelle l’interpolateur mène. (Substitue CUIAnimationInterpolatorBase::GetFinalValue.)
CInterpolatorBase ::InterpolateValue Interpole la valeur à un décalage donné (remplace CUIAnimationInterpolatorBase::InterpolateValue.)
CInterpolatorBase ::InterpolateVelocity Interpole la vitesse à un décalage donné (remplace CUIAnimationInterpolatorBase::InterpolateVelocity.)
CInterpolatorBase ::SetCustomInterpolator Stocke un pointeur vers un interpolateur personnalisé, qui gère les événements.
CInterpolatorBase ::SetDuration Définit la durée de l’interpolateur (substitue CUIAnimationInterpolatorBase::SetDuration.)
CInterpolatorBase ::SetInitialValueAndVelocity Définit la valeur et la vitesse initiales de l’interpolateur. (Substitue CUIAnimationInterpolatorBase::SetInitialValueAndVelocity.)

Notes

Ce gestionnaire est créé et transmis lorsqu’un IUIAnimationTransitionFactory::CreateTransitionCCustomTransition objet est créé dans le cadre du processus d’initialisation d’animation (démarré par CAnimationController::AnimateGroup). Généralement, vous n’avez pas besoin d’utiliser cette classe directement, il route simplement tous les événements vers une CCustomInterpolatorclasse dérivée -, dont le pointeur est passé au constructeur de CCustomTransition.

Hiérarchie d'héritage

CUIAnimationCallbackBase

CUIAnimationInterpolatorBase

CInterpolatorBase

Spécifications

En-tête : afxanimationcontroller.h

CInterpolatorBase ::CInterpolatorBase

Construit l’objet CInterpolatorBase.

CInterpolatorBase();

CInterpolatorBase ::CreateInstance

Crée une instance de CInterpolatorBase et stocke un pointeur vers un interpolateur personnalisé, qui gère les événements.

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

Paramètres

pInterpolator
Pointeur vers un interpolateur personnalisé.

ppHandler
Sortie. Contient un pointeur vers une instance de CInterpolatorBase lorsque la fonction est retournée.

Valeur de retour

CInterpolatorBase ::GetDependencies

Obtient les dépendances de l’interpolateur.

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

Paramètres

initialValueDependencies
Sortie. Aspects de l’interpolateur qui dépendent de la valeur initiale passée à SetInitialValueAndVelocity.

initialVelocityDependencies
Sortie. Aspects de l’interpolateur qui dépendent de la vitesse initiale passée à SetInitialValueAndVelocity.

durationDependencies
Sortie. Aspects de l’interpolateur qui dépendent de la durée passée à SetDuration.

Valeur de retour

Si la méthode réussit, retourne S_OK. Elle retourne E_FAIL si CCustomInterpolator n’est pas défini ou si l’implémentation personnalisée retourne FALSE à partir de la méthode GetDependencies.

CInterpolatorBase ::GetDuration

Obtient la durée de l’interpolateur.

IFACEMETHOD(GetDuration)(__out UI_ANIMATION_SECONDS* duration);

Paramètres

duration
Sortie. Durée de la transition, en secondes.

Valeur de retour

Si la méthode réussit, retourne S_OK. Elle retourne E_FAIL si CCustomInterpolator n’est pas défini ou si l’implémentation personnalisée retourne FALSE à partir de la méthode GetDuration.

CInterpolatorBase ::GetFinalValue

Obtient la valeur finale à laquelle l’interpolateur mène.

IFACEMETHOD(GetFinalValue)(__out DOUBLE* value);

Paramètres

value
Sortie. Valeur finale d’une variable à la fin de la transition.

Valeur de retour

Si la méthode réussit, retourne S_OK. Elle retourne E_FAIL si CCustomInterpolator n’est pas défini ou si l’implémentation personnalisée retourne FALSE à partir de la méthode GetFinalValue.

CInterpolatorBase ::InterpolateValue

Interpole la valeur à un décalage donné

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

Paramètres

offset
Décalage à partir du début de la transition. Le décalage est toujours supérieur ou égal à zéro et inférieur à la durée de la transition. Cette méthode n’est pas appelée si la durée de la transition est égale à zéro.

value
Sortie. Valeur interpolée.

Valeur de retour

Si la méthode réussit, retourne S_OK. Elle retourne E_FAIL si CCustomInterpolator n’est pas défini, ou si l’implémentation personnalisée retourne FALSE à partir de la méthode InterpolateValue.

CInterpolatorBase ::InterpolateVelocity

Interpole la vitesse à un décalage donné

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

Paramètres

offset
Décalage à partir du début de la transition. Le décalage est toujours supérieur ou égal à zéro et inférieur ou égal à la durée de la transition. Cette méthode n’est pas appelée si la durée de la transition est égale à zéro.

Vitesse
Sortie. Vitesse de la variable à l’offset.

Valeur de retour

Si la méthode réussit, retourne S_OK. Elle retourne E_FAIL si CCustomInterpolator n’est pas défini ou si l’implémentation personnalisée retourne FALSE à partir de la méthode InterpolateVelocity.

CInterpolatorBase ::SetCustomInterpolator

Stocke un pointeur vers un interpolateur personnalisé, qui gère les événements.

void SetCustomInterpolator(CCustomInterpolator* pInterpolator);

Paramètres

pInterpolator
Pointeur vers un interpolateur personnalisé.

CInterpolatorBase ::SetDuration

Définit la durée de l’interpolateur

IFACEMETHOD(SetDuration)(__in UI_ANIMATION_SECONDS duration);

Paramètres

duration
Durée de la transition.

Valeur de retour

Si la méthode réussit, retourne S_OK. Elle retourne E_FAIL si CCustomInterpolator n’est pas défini ou si l’implémentation personnalisée retourne FALSE à partir de la méthode SetDuration.

CInterpolatorBase ::SetInitialValueAndVelocity

Définit la valeur et la vitesse initiales de l’interpolateur.

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

Paramètres

initialValue
Valeur de la variable au début de la transition.

initialVelocity
Vitesse de la variable au début de la transition.

Valeur de retour

Si la méthode réussit, retourne S_OK. Elle retourne E_FAIL si CCustomInterpolator n’est pas défini ou si l’implémentation personnalisée retourne FALSE à partir de la méthode SetInitialValueAndVelocity.

Voir aussi

Classes