QuaternionKeyFrameAnimation Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Анимация на основе времени, предназначенная для свойства Orientation с одним или несколькими ключевыми кадрами.
Класс QuaternionKeyFrameAnimation является одним из поддерживаемых типов keyFrameAnimation, используемых для анимации свойства Orientation в Visual. Кватернионы — это удобный и иногда простой способ подумать о поворотах — Кватернионы принимают самый короткий путь между углами и избежать таких проблем, как Гимблальная блокировка, вращающаяся угол или ось и матрицы поворота. Кватернион состоит из двух компонентов: скалярной и векторной части.
public ref class QuaternionKeyFrameAnimation sealed : KeyFrameAnimation
/// [Windows.Foundation.Metadata.ContractVersion(Microsoft.Foundation.LiftedContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class QuaternionKeyFrameAnimation final : KeyFrameAnimation
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
/// [Windows.Foundation.Metadata.ContractVersion(Microsoft.Foundation.WindowsAppSDKContract, 65536)]
class QuaternionKeyFrameAnimation final : KeyFrameAnimation
[Windows.Foundation.Metadata.ContractVersion(typeof(Microsoft.Foundation.LiftedContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public sealed class QuaternionKeyFrameAnimation : KeyFrameAnimation
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
[Windows.Foundation.Metadata.ContractVersion(typeof(Microsoft.Foundation.WindowsAppSDKContract), 65536)]
public sealed class QuaternionKeyFrameAnimation : KeyFrameAnimation
Public NotInheritable Class QuaternionKeyFrameAnimation
Inherits KeyFrameAnimation
- Наследование
-
Object Platform::Object IInspectable CompositionObject CompositionAnimation KeyFrameAnimation QuaternionKeyFrameAnimation
- Атрибуты
Примеры
void QuaternionAnimation(SpriteVisual visual)
{
// Create the QuaternionKeyFrameAnimation
var quaternionKFA = _compositor.CreateQuaternionKeyFrameAnimation();
// Create a Quaternion that represents a 45 degree rotation around X Axis
Quaternion quaternion = new Quaternion(0.380f, 0f, 0.0f, 0.92f);
// Insert the Quaternion into the KeyFrame
quaternionKFA.InsertKeyFrame(1.0f, quaternion);
quaternionKFA.Duration = TimeSpan.FromSeconds(1);
// Attach to the Orientation property of Visual
visual.StartAnimation("Orientation", quaternionKFA);
}
Комментарии
Анимация связана со свойством объекта путем вызова CompositionObject.StartAnimation и указания имени свойства и анимации. См. раздел примечаний CompositionObject.StartAnimation списка анимируемых свойств.
Кватернион состоит из двух различаемых частей: вектора и скалярного компонента. При использовании с анимацией ключевых кадров кватернион можно определить с помощью нотации System.Numerics из 4 с плавающей запятой или Vector3 и скалярной. System.Numerics предоставляет конструкторы для любого из этих нотации.
При переводе поворота в кватернион можно использовать вспомогательные функции System.Numerics Quaternion, которые позволяют создавать кватернионы из кватернионов из комбо оси или угла, матрицы поворота или явя или шаг/roll. В приведенном выше примере можно создать тот же Кватернион из следующего вспомогательного элемента:
Quaternion quaternion = Quaternion.CreateFromAxisAngle(new Vector3(1.0f, 0.0f, 0.0f), 0.78f);
Свойства
Comment |
Строка, связанная с CompositionObject. (Унаследовано от CompositionObject) |
Compositor |
Compositor, используемый для создания этого CompositionObject. (Унаследовано от CompositionObject) |
DelayBehavior |
Поведение задержки анимации ключевого кадра. (Унаследовано от KeyFrameAnimation) |
DelayTime |
Задержка до запуска анимации после вызова CompositionObject.StartAnimation. (Унаследовано от KeyFrameAnimation) |
Direction |
Направление воспроизведения анимации. Свойство направления |
DispatcherQueue |
Возвращает диспетчерку для CompositionObject. (Унаследовано от CompositionObject) |
Duration |
Длительность анимации. (Унаследовано от KeyFrameAnimation) |
ImplicitAnimations |
Коллекция неявных анимаций, присоединенных к этому объекту. (Унаследовано от CompositionObject) |
InitialValueExpressions |
Возвращает начальные значения анимации. (Унаследовано от CompositionAnimation) |
IterationBehavior |
Поведение итерации для анимации ключевых кадров. (Унаследовано от KeyFrameAnimation) |
IterationCount |
Количество повторов анимации ключевого кадра. (Унаследовано от KeyFrameAnimation) |
KeyFrameCount |
Количество ключевых кадров в KeyFrameAnimation. (Унаследовано от KeyFrameAnimation) |
Properties |
Коллекция свойств, связанных с CompositionObject. (Унаследовано от CompositionObject) |
StopBehavior |
Указывает, как задать значение свойства при вызове StopAnimation. (Унаследовано от KeyFrameAnimation) |
Target |
Цель анимации. (Унаследовано от CompositionAnimation) |
Методы
ClearAllParameters() |
Очищает все параметры анимации. (Унаследовано от CompositionAnimation) |
ClearParameter(String) |
Очищает параметр из анимации. (Унаследовано от CompositionAnimation) |
Close() |
Закрывает ресурсы системы CompositionObject и освобождает системные ресурсы. (Унаследовано от CompositionObject) |
Dispose() |
Выполняет определяемые приложением задачи, связанные с освобождением, освобождением или сбросом неуправляемых ресурсов. (Унаследовано от CompositionObject) |
InsertExpressionKeyFrame(Single, String, CompositionEasingFunction) |
Вставка ключевого кадра выражения. (Унаследовано от KeyFrameAnimation) |
InsertExpressionKeyFrame(Single, String) |
Вставляет ключевой кадр выражения. (Унаследовано от KeyFrameAnimation) |
InsertKeyFrame(Single, Quaternion, CompositionEasingFunction) |
Вставляет ключевой кадр с указанной функцией упрощения. |
InsertKeyFrame(Single, Quaternion) |
Вставка ключевого кадра. |
PopulatePropertyInfo(String, AnimationPropertyInfo) |
Определяет свойство, которое может быть анимировано. (Унаследовано от CompositionObject) |
SetBooleanParameter(String, Boolean) |
Задает логический параметр значения для использования с ExpressionAnimation или ключевым кадром выражений. (Унаследовано от CompositionAnimation) |
SetColorParameter(String, Color) |
Задает параметр значения цвета |
SetExpressionReferenceParameter(String, IAnimationObject) |
Задает объект, реализующий IAnimationObject в качестве ссылочного параметра в ExpressionAnimation. (Унаследовано от CompositionAnimation) |
SetMatrix3x2Parameter(String, Matrix3x2) |
Задает параметр значения Matrix3x2 для использования с ExpressionAnimation или ключевой кадр выражения. (Унаследовано от CompositionAnimation) |
SetMatrix4x4Parameter(String, Matrix4x4) |
Задает параметр значения Matrix4x4 для использования с ExpressionAnimation или ключевым кадром выражений. (Унаследовано от CompositionAnimation) |
SetQuaternionParameter(String, Quaternion) |
Задает значение Quaternion для использования с ExpressionAnimation или ключевым кадром выражений. (Унаследовано от CompositionAnimation) |
SetReferenceParameter(String, CompositionObject) |
Задает ссылку на объект Composition для использования с ExpressionAnimation или ключевым кадром выражений. (Унаследовано от CompositionAnimation) |
SetScalarParameter(String, Single) |
Задает параметр скалярного значения для использования с ExpressionAnimation или ключевым кадром выражений. (Унаследовано от CompositionAnimation) |
SetVector2Parameter(String, Vector2) |
Задает параметр значения Vector2 для использования с ExpressionAnimation или ключевого кадра выражения. (Унаследовано от CompositionAnimation) |
SetVector3Parameter(String, Vector3) |
Задает параметр значения Vector3 для использования с ExpressionAnimation или ключевым кадром выражений. (Унаследовано от CompositionAnimation) |
SetVector4Parameter(String, Vector4) |
Задает параметр значения Vector4 для использования с ExpressionAnimation или ключевой кадр выражения. (Унаследовано от CompositionAnimation) |
StartAnimation(String, CompositionAnimation, AnimationController) |
Подключает анимацию с указанным свойством объекта и запускает анимацию. (Унаследовано от CompositionObject) |
StartAnimation(String, CompositionAnimation) |
Подключает анимацию с указанным свойством объекта и запускает анимацию. (Унаследовано от CompositionObject) |
StartAnimationGroup(ICompositionAnimationBase) |
Запускает группу анимации. Метод StartAnimationGroup в CompositionObject позволяет запустить CompositionAnimationGroup. Все анимации в группе будут запущены одновременно в объекте. (Унаследовано от CompositionObject) |
StopAnimation(String) |
Отключает анимацию от указанного свойства и останавливает анимацию. (Унаследовано от CompositionObject) |
StopAnimationGroup(ICompositionAnimationBase) |
Останавливает группу анимации. (Унаследовано от CompositionObject) |
TryGetAnimationController(String) |
Возвращает AnimationController для анимации, выполняемой в указанном свойстве. (Унаследовано от CompositionObject) |
Применяется к
См. также раздел
- KeyFrameAnimation
- Обзор анимации композиции
- IClosable