Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Observação
A biblioteca Microsoft Foundation Classes (MFC) continua a ser suportada. No entanto, já não estamos a adicionar funcionalidades nem a atualizar a documentação.
Implementa um callback, que é chamado pela API de animação quando tem de calcular um novo valor de uma variável de animação.
Sintaxe
class CInterpolatorBase : public CUIAnimationInterpolatorBase<CInterpolatorBase>;
Membros
Construtores Públicos
| Nome | Description |
|---|---|
| CInterpolatorBase::CInterpolatorBase | Constrói o CInterpolatorBase objeto. |
Métodos Públicos
| Nome | Description |
|---|---|
| CInterpolatorBase::CreateInstance | Cria uma instância de CInterpolatorBase e armazena um ponteiro para um interpolador personalizado, que irá tratar de eventos. |
| CInterpolatorBase::GetDependencies | Obtém as dependências do interpolador. (Anula CUIAnimationInterpolatorBase::GetDependencies.) |
| CInterpolatorBase::GetDuration | Obtém a duração do interpolador. (Anula CUIAnimationInterpolatorBase::GetDuration.) |
| CInterpolatorBase::GetFinalValue | Obtém o valor final ao qual o interpolador conduz. (Anula CUIAnimationInterpolatorBase::GetFinalValue.) |
| CInterpolatorBase::InterpolateValue | Interpola o valor num determinado deslocamento (Overrides CUIAnimationInterpolatorBase::InterpolateValue). |
| CIntinterpolatorBase::InterpolateVelocity | Interpola a velocidade a um dado deslocamento (Overrides CUIAnimationInterpolatorBase::InterpolateVelocity). |
| CInterpolatorBase::SetCustomInterpolator | Armazena um apontador para um interpolador personalizado, que irá tratar de eventos. |
| Cinner polatorBase::SetDuration | Define a duração do interpolador (Overrides CUIAnimationInterpolatorBase::SetDuration.) |
| CInterpolatorBase::SetInitialValueAndVelocity | Define o valor inicial e a velocidade do interpolador. (Anula CUIAnimationInterpolatorBase::SetInitialValueAndVelocity.) |
Observações
Este handler é criado e passado quando IUIAnimationTransitionFactory::CreateTransition um CCustomTransition objeto está a ser criado como parte do processo de inicialização da animação (iniciado por CAnimationController::AnimateGroup). Normalmente não precisas de usar esta classe diretamente, ela apenas encaminha todos os eventos para uma CCustomInterpolatorclasse derivada de , cujo ponteiro é passado para o construtor de CCustomTransition.
Hierarquia de herança
CUIAnimationCallbackBase
CUIAnimationInterpolatorBase
CInterpolatorBase
Requerimentos
Cabeçalho: afxanimationcontroller.h
CInterpolatorBase::CInterpolatorBase
Constrói o objeto CInterpolatorBase.
CInterpolatorBase();
CInterpolatorBase::CreateInstance
Cria uma instância de CInterpolatorBase e armazena um ponteiro para um interpolador personalizado, que irá tratar de eventos.
static COM_DECLSPEC_NOTHROW HRESULT CreateInstance(
CCustomInterpolator* pInterpolator,
IUIAnimationInterpolator** ppHandler);
Parâmetros
pInterpolador
Um apontador para um interpolador personalizado.
ppHandler
Saída. Contém um apontador para uma instância de CInterpolatorBase quando a função retorna.
Valor de retorno
CInterpolatorBase::GetDependencies
Obtém as dependências do interpolador.
IFACEMETHOD(GetDependencies)(
__out UI_ANIMATION_DEPENDENCIES* initialValueDependencies,
__out UI_ANIMATION_DEPENDENCIES* initialVelocityDependencies,
__out UI_ANIMATION_DEPENDENCIES* durationDependencies);
Parâmetros
initialValueDependencies
Saída. Aspetos do interpolador que dependem do valor inicial passado para SetInitialValueAndVelocity.
initialVelocityDependencies
Saída. Aspetos do interpolador que dependem da velocidade inicial são passados para SetInitialValueAndVelocity.
duração Dependências
Saída. Aspetos do interpolador que dependem da duração passada ao SetDuration.
Valor de retorno
Se o método tiver sucesso, ele devolve S_OK. Devolve E_FAIL se o CCustomInterpolator não estiver definido, ou se a implementação personalizada devolver FALSE do método GetDependencies.
CInterpolatorBase::GetDuration
Obtém a duração do interpolador.
IFACEMETHOD(GetDuration)(__out UI_ANIMATION_SECONDS* duration);
Parâmetros
Duração
Saída. A duração da transição, em segundos.
Valor de retorno
Se o método tiver sucesso, ele devolve S_OK. Devolve E_FAIL se o CCustomInterpolator não estiver definido, ou se a implementação personalizada devolver FALSE do método GetDuration.
CInterpolatorBase::GetFinalValue
Obtém o valor final ao qual o interpolador conduz.
IFACEMETHOD(GetFinalValue)(__out DOUBLE* value);
Parâmetros
value
Saída. O valor final de uma variável no final da transição.
Valor de retorno
Se o método tiver sucesso, ele devolve S_OK. Devolve E_FAIL se o CCustomInterpolator não estiver definido, ou se a implementação personalizada devolver FALSE do método GetFinalValue.
CInterpolatorBase::InterpolateValue
Interpola o valor num determinado deslocamento
IFACEMETHOD(InterpolateValue)(
__in UI_ANIMATION_SECONDS offset,
__out DOUBLE* value);
Parâmetros
Deslocamento
O deslocamento em relação ao início da transição. O deslocamento é sempre maior ou igual a zero e menor que a duração da transição. Este método não é chamado se a duração da transição for zero.
value
Saída. O valor interpolado.
Valor de retorno
Se o método tiver sucesso, ele devolve S_OK. Devolve E_FAIL se o CCustomInterpolator não estiver definido, ou se a implementação personalizada devolver FALSE do método InterpolateValue.
CIntinterpolatorBase::InterpolateVelocity
Interpola a velocidade a um dado deslocamento
IFACEMETHOD(InterpolateVelocity)(
__in UI_ANIMATION_SECONDS offset,
__out DOUBLE* velocity);
Parâmetros
Deslocamento
O deslocamento em relação ao início da transição. O deslocamento é sempre maior ou igual a zero e menor ou igual à duração da transição. Este método não é chamado se a duração da transição for zero.
Velocidade
Saída. A velocidade da variável no deslocamento.
Valor de retorno
Se o método tiver sucesso, ele devolve S_OK. Devolve E_FAIL se o CCustomInterpolator não estiver definido, ou se a implementação personalizada devolver FALSE do método InterpolateVelocity.
CInterpolatorBase::SetCustomInterpolator
Armazena um apontador para um interpolador personalizado, que irá tratar de eventos.
void SetCustomInterpolator(CCustomInterpolator* pInterpolator);
Parâmetros
pInterpolador
Um apontador para um interpolador personalizado.
Cinner polatorBase::SetDuration
Define a duração do interpolador
IFACEMETHOD(SetDuration)(__in UI_ANIMATION_SECONDS duration);
Parâmetros
Duração
A duração da transição.
Valor de retorno
Se o método tiver sucesso, ele devolve S_OK. Devolve E_FAIL se o CCustomInterpolator não estiver definido, ou se a implementação personalizada devolver FALSE do método SetDuration.
CInterpolatorBase::SetInitialValueAndVelocity
Define o valor inicial e a velocidade do interpolador.
IFACEMETHOD(SetInitialValueAndVelocity)(
__in DOUBLE initialValue,
__in DOUBLE initialVelocity);
Parâmetros
inicialValue
O valor da variável no início da transição.
inicialVelocity
A velocidade da variável no início da transição.
Valor de retorno
Se o método tiver sucesso, ele devolve S_OK. Devolve E_FAIL se o CCustomInterpolator não estiver definido, ou se a implementação personalizada devolver FALSE do método SetInitialValueAndVelocity.