Share via


CInterpolatorBase-klasse

Opmerking

De Microsoft Foundation Classes-bibliotheek (MFC) wordt nog steeds ondersteund. We voegen echter geen functies meer toe of werken de documentatie bij.

Implementeert een callback, die wordt aangeroepen door de Animatie-API wanneer deze een nieuwe waarde van een animatievariabele moet berekenen.

Syntaxis

class CInterpolatorBase : public CUIAnimationInterpolatorBase<CInterpolatorBase>;

Leden

Openbare constructors

Naam Description
CInterpolatorBase::CInterpolatorBase Hiermee wordt het CInterpolatorBase object samengesteld.

Openbare methoden

Naam Description
CInterpolatorBase::CreateInstance Hiermee maakt u een exemplaar van CInterpolatorBase en slaat u een aanwijzer op naar een aangepaste interpolator, die gebeurtenissen verwerkt.
CInterpolatorBase::GetDependencies Hiermee worden de afhankelijkheden van de interpolator opgehaald. (Onderdrukkingen CUIAnimationInterpolatorBase::GetDependencies.)
CInterpolatorBase::GetDuration Hiermee haalt u de duur van de interpolator op. (Onderdrukkingen CUIAnimationInterpolatorBase::GetDuration.)
CInterpolatorBase::GetFinalValue Hiermee haalt u de uiteindelijke waarde op waarnaar de interpolator leidt. (Onderdrukkingen CUIAnimationInterpolatorBase::GetFinalValue.)
CInterpolatorBase::InterpolateValue Interpoleert de waarde op een bepaalde offset (onderdrukkingen CUIAnimationInterpolatorBase::InterpolateValue.)
CInterpolatorBase::InterpolateVelocity Interpoleert de snelheid bij een bepaalde offset (onderdrukkingen CUIAnimationInterpolatorBase::InterpolateVelocity.)
CInterpolatorBase::SetCustomInterpolator Slaat een aanwijzer op naar een aangepaste interpolator, die gebeurtenissen verwerkt.
CInterpolatorBase::SetDuration Hiermee stelt u de duur van de interpolator in (onderdrukkingen CUIAnimationInterpolatorBase::SetDuration.)
CInterpolatorBase::SetInitialValueAndVelocity Hiermee stelt u de initiële waarde en snelheid van de interpolator in. (Onderdrukkingen CUIAnimationInterpolatorBase::SetInitialValueAndVelocity.)

Opmerkingen

Deze handler wordt gemaakt en doorgegeven IUIAnimationTransitionFactory::CreateTransition wanneer een CCustomTransition object wordt gemaakt als onderdeel van het animatie-initialisatieproces (gestart door CAnimationController::AnimateGroup). Meestal hoeft u deze klasse niet rechtstreeks te gebruiken, maar worden alle gebeurtenissen doorgestuurd naar een CCustomInterpolator-afgeleide klasse, waarvan de aanwijzer wordt doorgegeven aan de constructor van CCustomTransition.

Overnamehiërarchie

CUIAnimationCallbackBase

CUIAnimationInterpolatorBase

CInterpolatorBase

Requirements

Header: afxanimationcontroller.h

CInterpolatorBase::CInterpolatorBase

Hiermee wordt het CInterpolatorBase-object gemaakt.

CInterpolatorBase();

CInterpolatorBase::CreateInstance

Hiermee maakt u een exemplaar van CInterpolatorBase en slaat u een aanwijzer op naar een aangepaste interpolator, die gebeurtenissen verwerkt.

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

Parameterwaarden

pInterpolator
Een aanwijzer naar een aangepaste interpolator.

ppHandler
Output. Bevat een aanwijzer naar het exemplaar van CInterpolatorBase wanneer de functie wordt geretourneerd.

Retourwaarde

CInterpolatorBase::GetDependencies

Hiermee worden de afhankelijkheden van de interpolator opgehaald.

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

Parameterwaarden

initialValueDependencies
Output. Aspecten van de interpolator die afhankelijk zijn van de initiële waarde die is doorgegeven aan SetInitialValueAndVelocity.

initialVelocityDependencies
Output. Aspecten van de interpolator die afhankelijk zijn van de initiële snelheid die is doorgegeven aan SetInitialValueAndVelocity.

durationDependencies
Output. Aspecten van de interpolator die afhankelijk zijn van de duur die is doorgegeven aan SetDuration.

Retourwaarde

Als de methode slaagt, wordt S_OK geretourneerd. Het retourneert E_FAIL als CCustomInterpolator niet is ingesteld, of aangepaste implementatie retourneert FALSE van de methode GetDependencies.

CInterpolatorBase::GetDuration

Hiermee haalt u de duur van de interpolator op.

IFACEMETHOD(GetDuration)(__out UI_ANIMATION_SECONDS* duration);

Parameterwaarden

duur
Output. De duur van de overgang, in seconden.

Retourwaarde

Als de methode slaagt, wordt S_OK geretourneerd. Het retourneert E_FAIL als CCustomInterpolator niet is ingesteld, of aangepaste implementatie retourneert FALSE van de Methode GetDuration.

CInterpolatorBase::GetFinalValue

Hiermee haalt u de uiteindelijke waarde op waarnaar de interpolator leidt.

IFACEMETHOD(GetFinalValue)(__out DOUBLE* value);

Parameterwaarden

value
Output. De uiteindelijke waarde van een variabele aan het einde van de overgang.

Retourwaarde

Als de methode slaagt, wordt S_OK geretourneerd. Het retourneert E_FAIL als CCustomInterpolator niet is ingesteld, of aangepaste implementatie retourneert FALSE van de methode GetFinalValue.

CInterpolatorBase::InterpolateValue

Interpoleert de waarde bij een bepaalde offset

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

Parameterwaarden

afstand
De verschuiving vanaf het begin van de overgang. De verschuiving is altijd groter dan of gelijk aan nul en kleiner dan de duur van de overgang. Deze methode wordt niet aangeroepen als de duur van de overgang nul is.

value
Output. De geïnterpoleerde waarde.

Retourwaarde

Als de methode slaagt, wordt S_OK geretourneerd. Het retourneert E_FAIL als CCustomInterpolator niet is ingesteld of als aangepaste implementatie FALSE retourneert uit de methode InterpolateValue.

CInterpolatorBase::InterpolateVelocity

Interpoleert de snelheid bij een bepaalde verschuiving

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

Parameterwaarden

afstand
De verschuiving vanaf het begin van de overgang. De verschuiving is altijd groter dan of gelijk aan nul en kleiner dan of gelijk aan de duur van de overgang. Deze methode wordt niet aangeroepen als de duur van de overgang nul is.

Snelheid
Output. De snelheid van de variabele op de offset.

Retourwaarde

Als de methode slaagt, wordt S_OK geretourneerd. Het retourneert E_FAIL als CCustomInterpolator niet is ingesteld, of aangepaste implementatie retourneert FALSE van de interpolateVelocity-methode.

CInterpolatorBase::SetCustomInterpolator

Slaat een aanwijzer op naar een aangepaste interpolator, die gebeurtenissen verwerkt.

void SetCustomInterpolator(CCustomInterpolator* pInterpolator);

Parameterwaarden

pInterpolator
Een aanwijzer naar een aangepaste interpolator.

CInterpolatorBase::SetDuration

Hiermee stelt u de duur van de interpolator in

IFACEMETHOD(SetDuration)(__in UI_ANIMATION_SECONDS duration);

Parameterwaarden

duur
De duur van de overgang.

Retourwaarde

Als de methode slaagt, wordt S_OK geretourneerd. Het retourneert E_FAIL als CCustomInterpolator niet is ingesteld, of aangepaste implementatie retourneert FALSE uit de methode SetDuration.

CInterpolatorBase::SetInitialValueAndVelocity

Hiermee stelt u de initiële waarde en snelheid van de interpolator in.

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

Parameterwaarden

initialValue
De waarde van de variabele aan het begin van de overgang.

initialVelocity
De snelheid van de variabele aan het begin van de overgang.

Retourwaarde

Als de methode slaagt, wordt S_OK geretourneerd. Het retourneert E_FAIL als CCustomInterpolator niet is ingesteld, of aangepaste implementatie retourneert FALSE van de methode SetInitialValueAndVelocity.

Zie ook

Klassen