Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Annotazioni
La libreria Microsoft Foundation Classes (MFC) continua a essere supportata. Tuttavia, non aggiungiamo più funzionalità né aggiorniamo la documentazione.
Implementa un callback, chiamato dall'API di animazione quando deve essere calcolato un nuovo valore di una variabile di animazione.
Sintassi
class CInterpolatorBase : public CUIAnimationInterpolatorBase<CInterpolatorBase>;
Membri
Costruttori pubblici
| Nome | Descrizione |
|---|---|
| CInterpolatorBase::CInterpolatorBase | Costruisce l'oggetto CInterpolatorBase . |
Metodi pubblici
| Nome | Descrizione |
|---|---|
| CInterpolatorBase::CreateInstance | Crea un'istanza di CInterpolatorBase e archivia un puntatore all'interpolatore personalizzato, che gestirà gli eventi. |
| CInterpolatorBase::GetDependencies | Ottiene le dipendenze dell'interpolatore. Esegue l'override di CUIAnimationInterpolatorBase::GetDependencies. |
| CInterpolatorBase::GetDuration | Ottiene la durata dell'interpolatore. Esegue l'override di CUIAnimationInterpolatorBase::GetDuration. |
| CInterpolatorBase::GetFinalValue | Ottiene il valore finale a cui conduce l'interpolatore. Esegue l'override di CUIAnimationInterpolatorBase::GetFinalValue. |
| CInterpolatorBase::InterpolateValue | Interpola il valore in corrispondenza di un determinato offset (esegue l'override CUIAnimationInterpolatorBase::InterpolateValuedi . |
| CInterpolatorBase::InterpolateVelocity | Interpola la velocità in corrispondenza di un determinato offset (esegue l'override CUIAnimationInterpolatorBase::InterpolateVelocitydi . |
| CInterpolatorBase::SetCustomInterpolator | Archivia un puntatore all'interpolatore personalizzato, che gestirà gli eventi. |
| CInterpolatorBase::SetDuration | Imposta la durata dell'interpolatore (esegue l'override CUIAnimationInterpolatorBase::SetDurationdi . |
| CInterpolatorBase::SetInitialValueAndVelocity | Imposta il valore e la velocità iniziali dell'interpolatore. Esegue l'override di CUIAnimationInterpolatorBase::SetInitialValueAndVelocity. |
Osservazioni:
Questo gestore viene creato e passato a IUIAnimationTransitionFactory::CreateTransition quando un CCustomTransition oggetto viene creato come parte del processo di inizializzazione dell'animazione (avviato da CAnimationController::AnimateGroup). In genere non è necessario usare direttamente questa classe, ma solo indirizzare tutti gli eventi a una CCustomInterpolatorclasse derivata da , il cui puntatore viene passato al costruttore di CCustomTransition.
Gerarchia di ereditarietà
CUIAnimationCallbackBase
CUIAnimationInterpolatorBase
CInterpolatorBase
Requisiti
Intestazione: afxanimationcontroller.h
CInterpolatorBase::CInterpolatorBase
Costruisce l'oggetto CInterpolatorBase.
CInterpolatorBase();
CInterpolatorBase::CreateInstance
Crea un'istanza di CInterpolatorBase e archivia un puntatore all'interpolatore personalizzato, che gestirà gli eventi.
static COM_DECLSPEC_NOTHROW HRESULT CreateInstance(
CCustomInterpolator* pInterpolator,
IUIAnimationInterpolator** ppHandler);
Parametri
pInterpolator
Puntatore all'interpolatore personalizzato.
ppHandler
Output. Contiene un puntatore all'istanza di CInterpolatorBase quando la funzione restituisce.
Valore restituito
CInterpolatorBase::GetDependencies
Ottiene le dipendenze dell'interpolatore.
IFACEMETHOD(GetDependencies)(
__out UI_ANIMATION_DEPENDENCIES* initialValueDependencies,
__out UI_ANIMATION_DEPENDENCIES* initialVelocityDependencies,
__out UI_ANIMATION_DEPENDENCIES* durationDependencies);
Parametri
initialValueDependencies
Output. Aspetti dell'interpolatore che dipendono dal valore iniziale passato a SetInitialValueAndVelocity.
initialVelocityDependencies
Output. Aspetti dell'interpolatore che dipendono dalla velocità iniziale passata a SetInitialValueAndVelocity.
durationDependencies
Output. Aspetti dell'interpolatore che dipendono dalla durata passata a SetDuration.
Valore restituito
Se il metodo ha esito positivo, viene restituito S_OK. Restituisce E_FAIL se CCustomInterpolator non è impostato o l'implementazione personalizzata restituisce FALSE dal metodo GetDependencies.
CInterpolatorBase::GetDuration
Ottiene la durata dell'interpolatore.
IFACEMETHOD(GetDuration)(__out UI_ANIMATION_SECONDS* duration);
Parametri
duration
Output. Durata della transizione, espressa in secondi.
Valore restituito
Se il metodo ha esito positivo, viene restituito S_OK. Restituisce E_FAIL se CCustomInterpolator non è impostato o l'implementazione personalizzata restituisce FALSE dal metodo GetDuration.
CInterpolatorBase::GetFinalValue
Ottiene il valore finale a cui conduce l'interpolatore.
IFACEMETHOD(GetFinalValue)(__out DOUBLE* value);
Parametri
value
Output. Valore finale di una variabile alla fine della transizione.
Valore restituito
Se il metodo ha esito positivo, viene restituito S_OK. Restituisce E_FAIL se CCustomInterpolator non è impostato o l'implementazione personalizzata restituisce FALSE dal metodo GetFinalValue.
CInterpolatorBase::InterpolateValue
Interpola il valore in corrispondenza di un determinato offset
IFACEMETHOD(InterpolateValue)(
__in UI_ANIMATION_SECONDS offset,
__out DOUBLE* value);
Parametri
offset
Offset dall'inizio della transizione. L'offset è sempre maggiore o uguale a zero e minore della durata della transizione. Questo metodo non viene chiamato se la durata della transizione è zero.
value
Output. Valore interpolato.
Valore restituito
Se il metodo ha esito positivo, viene restituito S_OK. Restituisce E_FAIL se CCustomInterpolator non è impostato o l'implementazione personalizzata restituisce FALSE dal metodo InterpolateValue.
CInterpolatorBase::InterpolateVelocity
Interpola la velocità in corrispondenza di un determinato offset
IFACEMETHOD(InterpolateVelocity)(
__in UI_ANIMATION_SECONDS offset,
__out DOUBLE* velocity);
Parametri
offset
Offset dall'inizio della transizione. L'offset è sempre maggiore o uguale a zero e minore o uguale alla durata della transizione. Questo metodo non viene chiamato se la durata della transizione è zero.
velocità
Output. Velocità della variabile in corrispondenza dell'offset.
Valore restituito
Se il metodo ha esito positivo, viene restituito S_OK. Restituisce E_FAIL se CCustomInterpolator non è impostato oppure l'implementazione personalizzata restituisce FALSE dal metodo InterpolateVelocity.
CInterpolatorBase::SetCustomInterpolator
Archivia un puntatore all'interpolatore personalizzato, che gestirà gli eventi.
void SetCustomInterpolator(CCustomInterpolator* pInterpolator);
Parametri
pInterpolator
Puntatore all'interpolatore personalizzato.
CInterpolatorBase::SetDuration
Imposta la durata dell'interpolatore
IFACEMETHOD(SetDuration)(__in UI_ANIMATION_SECONDS duration);
Parametri
duration
Durata della transizione.
Valore restituito
Se il metodo ha esito positivo, viene restituito S_OK. Restituisce E_FAIL se CCustomInterpolator non è impostato oppure l'implementazione personalizzata restituisce FALSE dal metodo SetDuration.
CInterpolatorBase::SetInitialValueAndVelocity
Imposta il valore e la velocità iniziali dell'interpolatore.
IFACEMETHOD(SetInitialValueAndVelocity)(
__in DOUBLE initialValue,
__in DOUBLE initialVelocity);
Parametri
initialValue
Valore della variabile all'inizio della transizione.
initialVelocity
Velocità della variabile all'inizio della transizione.
Valore restituito
Se il metodo ha esito positivo, viene restituito S_OK. Restituisce E_FAIL se CCustomInterpolator non è impostato oppure l'implementazione personalizzata restituisce FALSE dal metodo SetInitialValueAndVelocity.