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::CreateTransition
CCustomTransition
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 CCustomInterpolator
classe 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
valeur
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.
valeur
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.