Класс CCustomTransition
Реализует пользовательский переход.
Синтаксис
class CCustomTransition : public CBaseTransition;
Участники
Открытые конструкторы
Имя | Описание |
---|---|
CCustomTransition::CCustomTransition | Создает пользовательский объект перехода. |
Открытые методы
Имя | Описание |
---|---|
CCustomTransition::Create | Вызывает библиотеку перехода для создания инкапсулированного com-объекта перехода. (Переопределения CBaseTransition::Create.) |
CCustomTransition::SetInitialValue | Задает начальное значение, которое будет применено к переменной анимации, связанной с этим переходом. |
CCustomTransition::SetInitialVelocity | Задает начальную скорость, которая будет применена к переменной анимации, связанной с этим переходом. |
Защищенные члены данных
Имя | Описание |
---|---|
CCustomTransition::m_bInitialValueSpecified | Указывает, задано ли начальное значение с помощью SetInitialValue. |
CCustomTransition::m_bInitialVelocitySpecified | Указывает, была ли указана начальная скорость с помощью SetInitialVelocity. |
CCustomTransition::m_initialValue | Сохраняет начальное значение. |
CCustomTransition::m_initialVelocity | Сохраняет начальную скорость. |
CCustomTransition::m_pInterpolator | Сохраняет указатель на пользовательский интерполятор. |
Замечания
Класс CCustomTransitions позволяет разработчикам реализовывать пользовательские переходы. Он создается и используется в качестве стандартного перехода, но его конструктор принимает в качестве параметра указатель на пользовательский интерполятор. Выполните следующие действия, чтобы использовать пользовательские переходы: 1. Наследуйте класс от CCustomInterpolator и реализуйте по крайней мере метод ИнтерполатValue. 2. Убедитесь, что время существования пользовательского объекта интерполятора должно быть больше длительности анимации, в которой оно используется. 3. Создайте экземпляр (используя новый оператор) объект CCustomTransition и передайте указатель на настраиваемый интерполятор в конструкторе. 4. Вызовите CCustomTransition::SetInitialValue и CCustomTransition::SetInitialVelocity, если эти параметры необходимы для пользовательской интерполяции. 5. Передайте указатель на пользовательский переход к методу AddTransition объекта анимации, значение которого должно быть анимировано с помощью пользовательского алгоритма. 6. Если значение объекта анимации должно изменить API анимации Windows, в CCustomInterpolator вызовет ИнтерполатЗначение (и другие соответствующие методы).
Иерархия наследования
CCustomTransition
Требования
Заголовок: afxanimationcontroller.h
CCustomTransition::CCustomTransition
Создает пользовательский объект перехода.
CCustomTransition(CCustomInterpolator* pInterpolator);
Параметры
pInterpolator
Указатель на настраиваемый интерполятор.
CCustomTransition::Create
Вызывает библиотеку перехода для создания инкапсулированного com-объекта перехода.
virtual BOOL Create(
IUIAnimationTransitionLibrary* */,
IUIAnimationTransitionFactory* pFactory);
Параметры
pFactory
Указатель на фабрику перехода, которая отвечает за создание пользовательских переходов.
Возвращаемое значение
Замечания
Этот метод также может задать начальное значение и начальную скорость для применения к переменной анимации, связанной с этим переходом. Для этого необходимо вызвать SetInitialValue и SetInitialVelocity перед созданием инкапсулированного com-объекта перехода (это происходит при вызове CAnimationController::AnimateGroup).
CCustomTransition::m_bInitialValueSpecified
Указывает, задано ли начальное значение с помощью SetInitialValue.
BOOL m_bInitialValueSpecified;
CCustomTransition::m_bInitialVelocitySpecified
Указывает, была ли указана начальная скорость с помощью SetInitialVelocity.
BOOL m_bInitialVelocitySpecified;
CCustomTransition::m_initialValue
Сохраняет начальное значение.
DOUBLE m_initialValue;
CCustomTransition::m_initialVelocity
Сохраняет начальную скорость.
DOUBLE m_initialVelocity;
CCustomTransition::m_pInterpolator
Сохраняет указатель на пользовательский интерполятор.
CCustomInterpolator* m_pInterpolator;
CCustomTransition::SetInitialValue
Задает начальное значение, которое будет применено к переменной анимации, связанной с этим переходом.
void SetInitialValue(DOUBLE initialValue);
Параметры
initialValue
CCustomTransition::SetInitialVelocity
Задает начальную скорость, которая будет применена к переменной анимации, связанной с этим переходом.
void SetInitialVelocity(DOUBLE initialVelocity);
Параметры
initialVelocity