Partager via


InteractionTracker Classe

Définition

Gère la logique d’entrée qui peut être utilisée comme cibles dans ExpressionAnimations, généralement pour piloter le mouvement des visuels en fonction de l’entrée.

public ref class InteractionTracker sealed : CompositionObject
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 196608)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class InteractionTracker final : CompositionObject
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 196608)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public sealed class InteractionTracker : CompositionObject
Public NotInheritable Class InteractionTracker
Inherits CompositionObject
Héritage
Object Platform::Object IInspectable CompositionObject InteractionTracker
Attributs

Configuration requise pour Windows

Famille d’appareils
Windows 10 Anniversary Edition (introduit dans 10.0.14393.0)
API contract
Windows.Foundation.UniversalApiContract (introduit dans v3.0)

Exemples

void SetupSimpleInteractionTracker(Visual viewportVisual, Visual contentVisual)
{
  //
  // Create the InteractionTracker and set its min/max position and scale.  These could 
  // also be bound to expressions.  Note: The scrollable area can be changed from either 
  // the min or the max position to facilitate content updates/virtualization.
  //

  _tracker = InteractionTracker.Create(_compositor);

  _tracker.MaxPosition = new Vector3(
    contentVisual.Size.X - viewportVisual.Size.X,
    contentVisual.Size.Y - viewportVisual.Size.Y,
    0.0f);

  _tracker.MinScale = 0.5f;
  _tracker.MaxScale = 4.0f;


  //
  // Configure the interaction source.  Enable input with inertia on all axes.
  //

  var interactionSource = VisualInteractionSource.Create(viewportVisual);

  interactionSource.PositionXSourceMode = InteractionSourceMode.EnabledWithInertia;
  interactionSource.PositionYSourceMode = InteractionSourceMode.EnabledWithInertia;
  interactionSource.ScaleSourceMode = InteractionSourceMode.EnabledWithInertia;

  _tracker.InteractionSources.Add(interactionSource);


  //
  // Bind the InteractionTracker outputs to the contentVisual.
  //

  var positionExpression = _compositor.CreateExpressionAnimation("-tracker.Position");
  positionExpression.SetReferenceParameter("tracker", _tracker);

  contentVisual.StartAnimation("Offset", positionExpression);


  var scaleExpression = _compositor.CreateExpressionAnimation("Vector3(tracker.Scale, tracker.Scale, 1.0)");

  scaleExpression.SetReferenceParameter("tracker", _tracker);

  contentVisual.StartAnimation("Scale", scaleExpression);
}


Remarques

InteractionTracker est une machine à états qui peut être pilotée par une entrée active ou par des appels explicites pour mettre à jour ou animer ses propriétés. La classe InteractionTracker est destinée à activer l’entrée pour piloter compositionAnimationpour des expériences d’interaction personnalisées. Pour créer des expériences interactives, il est nécessaire d’associer un ou plusieurs VisualInteractionSourceà InteractionTracker.

Scénarios courants

IneractionTracker est destiné à être utilisé pour :

  • Ajout d’un comportement de balayage personnalisé, par exemple le balayage d’éléments ListView ou d’autres visuels à supprimer/ignorer
  • Transitions liées au mouvement panoramique, par exemple le balayage pour passer d’un état « fermé » à un état « ouvert »
  • Animation pilotée par l’entrée d’un effet, par exemple le mouvement panoramique provoque le flou de l’écran
  • Contrôles personnalisés, par exemple la création d’une implémentation personnalisée d’un ScrollViewer avec différentes vitesses de mouvement panoramique ou la possibilité d’être contrôlé par programmation

États et transitions d’InteractionTracker

InteractionTracker est une machine à états avec quatre états :

  • Inactif : aucune entrée ou animation active à l’origine de l’InteractionTracker
  • Interaction : l’entrée utilisateur active est le moteur d’InteractionTracker
  • Inertie : les animations actives qui sont le résultat d’une entrée active ou d’une vélocité programmatique sont à l’origine de l’InteractionTracker
  • CustomAnimation : une propriété de l’InteractionTracker est directement animée Le diagramme ci-dessous montre ces quatre états et les transitions d’état valides.
États InteractionTracker : Inactif, Inertie, Interaction et Animation personnalisée

Les transitions d’état peuvent se produire en raison d’actions de l’utilisateur (telles que le démarrage ou l’arrêt d’une manipulation) ou d’appels explicites à des méthodes sur InteractionTracker. Chaque fois qu’un de ces appels explicites est effectué, un requestID est émis pour déterminer si la demande est ignorée ou provoque un changement d’état.

Il est important de noter qu’InteractionTracker s’exécute dans un processus différent de celui de l’application qui l’utilise. Par conséquent, tous les appels de méthode sur InteractionTracker et les classes associées sont asynchrones, tout comme les rappels émis via l’interface IInteractionTrackerOwner.

Les éléments suivants décrivent ce qui déclenche chaque changement d’état :

État de débutÉtat finalDéclencheurs possibles
IdleInteractionCette transition d’état se produit uniquement lorsqu’une manipulation utilisateur qui s’aligne sur un VisualInteractionSource associé à InteractionTracker est en cours d’exécution.
IdleInertieCette transition d’état se produit uniquement quand InteractionTracker est à l’état Inactif et que TryUpdatePositionWithVelocity ou TryUpdateScaleWithVelocity est appelé.
IdleCustomAnimationCette transition d’état se produit quand InteractionTracker est à l’état Inactif et que TryUpdatePositionWithAnimation ou TryUpdateScaleWithAnimation est appelé.
InteractionInertieCette transition d’état se produit uniquement lorsqu’une manipulation utilisateur qui a été envoyée à InteractionTracker se termine. Lorsque l’entrée active se termine, l’InteractionTracker passe à l’état Inertie, et des informations telles que la vitesse de libération du doigt et l’inertieDecayRate déterminent le comportement pendant l’état Inertie.
InertieIdleCette transition d’état se produit lorsque la ou les fonctions utilisées pour mettre à jour la position et/ou la mise à l’échelle n’entraînent plus de modification. En d’autres termes, la vitesse de position et de mise à l’échelle ont toutes deux atteint zéro. Cette transition d’état peut également se produire si un appel est effectué pour mettre à jour explicitement la position ou la mise à l’échelle sans animation ni vélocité. Ces appels devront mettre fin à l’inertie et passer à Idle avec les valeurs de propriété mises à jour.
InertieInertieCette transition d’état se produit lorsque TryUpdatePositionWithVelocity ou TryUpdateScaleWithVelocity est appelé lorsqu’il est déjà à l’état Inertie. La saisie de l’inertie entraîne la réévaluation de toutes les propriétés InertiaStateEntered.
InertieCustomAnimationCette transition d’état se produit lorsqu’un appel à TryUpdatePositionWithAnimation ou TryUpdateScaleWithAnimation est effectué dans le sate Inertie.
InertieInteractionCette transition d’état se produit lorsque l’entrée active de l’utilisateur qui effectue des tests d’accès à VisualInteractionSource arrive avant la fin de l’inertie.
CustomAnimationIdleCette transition d’état se produit lorsque toutes les animations définies sur les propriétés de position et d’échelle d’InteractionTracker sont terminées.
CustomAnimationCustomAnimationCette transition d’état se produit lorsqu’un appel à TryUpdatePositionWithAnimation ou TryUpdateScaleWithAnimation est effectué alors qu’il est déjà à l’état CustomAnimation.
CustomAnimationInertieCette transition d’état se produit lorsqu’un appel à TryUpdatePositionWithVelocity ou TryUpdateScaleWithVelocity est effectué dans l’état CustomAnimation.
CustomAnimationInteractionCette transition d’état se produit lorsqu’une manipulation d’utilisateur qui effectue des tests d’accès vers un VisualInteractionSource associé à InteractionTracker est en cours d’exécution.

Toute transition d’état effectuée par InteractionTracker génère un rappel indiquant le nouvel état avec des arguments qui incluent des informations pertinentes pour cet état, ainsi que l’ID de demande pour la demande qui a provoqué le changement d’état. Les manipulations actives de l’utilisateur entraînent un id de requête de 0. Tout appel Try* émet un requestID qui peut être utilisé pour le suivi de l’appel Try* à l’origine du changement d’état. Le premier requestID pendant la durée de vie de l’application sera 1, et chaque appel suivant incrémentera l’ID de requête, ce qui signifie que chacun sera unique.

Position et mise à l’échelle d’InteractionTracker

Les deux propriétés les plus couramment utilisées d’InteractionTracker sont position et scale. Chaque fois qu’une modification est apportée à l’une de ces propriétés ou aux deux, le rappel ValuesChanged est envoyé avec des informations sur les valeurs actuelles. En raison de la nature asynchrone d’InteractionTracker, les valeurs reçues via les rappels InteractionTracker constituent le meilleur moyen de mettre à jour la logique d’application sur l’état actuel et les valeurs d’InteractionTracker et de ses propriétés.

Une distinction importante concernant InteractionTracker est que sa position et son échelle ne sont pas associées à l’espace de coordonnées d’un visuel particulier. Au moment de la création d’InteractionTracker, sa position aura les sous-canaux x, y et z du vecteur définis sur 0, et la mise à l’échelle sera définie sur 1. Seuls les appels d’entrée ou try* actifs peuvent entraîner la modification de ces valeurs. Les valeurs minimales et maximales de chaque propriété déterminent la plage dans laquelle les valeurs peuvent fluctuer. La seule exception est le concept de « overpan » ou « overzoom », où une manipulation active peut faire en sorte que les valeurs vont légèrement au-delà du minimum ou du maximum pendant l’état d’interaction. Une fois la manipulation terminée, toutefois, les valeurs sont toujours au repos dans la plage définie. Les customAnimations seront toujours serrées dans les plages définies pour la position et l’échelle.

Le concept d’espace de coordonnées InteractionTracker s’aligne sur le concept des coordonnées d’écran en ce qu’un mouvement haut/gauche augmente la valeur de la position et qu’un mouvement vers le bas/la droite diminue la valeur de la position. Par conséquent, il est très courant d’nier la propriété position lors de son attachement au décalage d’un visuel.

Par défaut, les canaux de position minimale et maximale sont tous 0, et les valeurs d’échelle minimale et maximale sont 1. Si le comportement souhaité pour l’une ou l’autre propriété est de lui permettre de changer en dehors de ces valeurs de départ, les valeurs minimales/maximales doivent être mises à jour.

InteractionTracker et ExpressionAnimations

InteractionTracker expose une variété de propriétés qui peuvent être utilisées dans le contexte d’ExpressionAnimations pour générer des mises à jour vers des propriétés pouvant être modifiées de CompositionObject s. En raison de la nature asynchrone d’InteractionTracker, il n’est pas recommandé d’interroger ces propriétés directement. Au lieu de cela, vous devez utiliser les propriétés fournies dans les rappels pour piloter la logique d’application et pour référencer les valeurs d’une ExpressionAnimation pour mettre à jour les propriétés animatables.

Comme mentionné ci-dessus, les deux propriétés les plus couramment utilisées de InteractionTracker sont les propriétés Position et Scale. Il s’agit des propriétés qui seront mises à jour en réponse à l’entrée utilisateur et aux appels Try*. L’utilisation de ces propriétés dans ExpressionAnimations entraîne la mise à jour des propriétés animatables de CompositionObjects en réponse. Par exemple, la propriété InteractionTracker.position peut être liée au décalage d’un élément visuel. Il est également courant d’utiliser ces propriétés pour remplir un CompositionPropertySet qui suit la progression, qui peut à son tour conduire une série d’animations coordonnées.

Diriger l’entrée vers InteractionTracker

Après avoir été configuré, InteractionTracker nécessite toujours une dernière étape pour recevoir réellement une entrée tactile et répondre. Consultez la documentation sur VisualInteractionSource. Essayez TryRedirectForManipulation pour plus d’informations sur la configuration de l’entrée entrante pour qu’elle soit acheminée dans InteractionTracker.

Historique des versions

Version de Windows Version du SDK Valeur ajoutée
1703 15063 ConfigurerCenterPointXInertiaModifiers
1703 15063 ConfigurerCenterPointYInertiaModifiers
1709 16299 ConfigureVector2PositionInertiaModifiers
1809 17763 IsInertiaFromImpulse
1809 17763 TryUpdatePosition(Vector3,InteractionTrackerClampingOption)
1809 17763 TryUpdatePositionBy(Vector3,InteractionTrackerClampingOption)
1903 18362 GetBindingMode
1903 18362 SetBindingMode
2004 19041 TryUpdatePosition(Vector3,InteractionTrackerClampingOption,InteractionTrackerPositionUpdateOption)

Propriétés

Comment

Chaîne à associer à l’objet CompositionObject.

(Hérité de CompositionObject)
Compositor

Compositeur utilisé pour créer cet Objet CompositionObject.

(Hérité de CompositionObject)
Dispatcher

Répartiteur de l’objet CompositionObject.

(Hérité de CompositionObject)
DispatcherQueue

Obtient dispatcherQueue pour compostionObject.

(Hérité de CompositionObject)
ImplicitAnimations

Collection d’animations implicites attachées à cet objet.

(Hérité de CompositionObject)
InteractionSources

Collection d’objets qui génèrent des interactions.

IsInertiaFromImpulse

Obtient une valeur qui indique si l’inertie est le résultat d’une impulsion.

IsPositionRoundingSuggested

Valeur booléenne indiquant si l’arrondi de position est actuellement suggéré.

MaxPosition

Position maximale autorisée pour InteractionTracker.

MaxScale

Échelle maximale pour InteractionTracker.

MinPosition

Position minimale autorisée pour InteractionTracker.

MinScale

Échelle minimale pour InteractionTracker.

NaturalRestingPosition

Position de repos naturelle pour l’InteractionTracker.

La propriété NaturalRestingPosition est la position calculée à laquelle InteractionTracker s’arrêtera sans prendre en compte les limites ou les modificateurs d’inertie. Cette propriété est souvent utile pour des actions telles que la virtualisation dans une expérience de défilement, où il est important de connaître l’emplacement où InteractionTracker s’arrêtera . Il existe deux cas d’usage main pour l’utilisation de la propriété NaturalRestingPosition : récupération de sa valeur actuelle dans les arguments d’événement InertieStateEntered ou référencement de cette propriété dans une expressionAnimation lors de la création d’éléments tels que des modificateurs d’inertie.

NaturalRestingScale

Échelle de repos naturelle pour InteractionTracker.

La propriété NaturalRestingScale est la position d’échelle calculée à laquelle InteractionTracker s’arrêtera sans prendre en compte les limites ou les modificateurs d’inertie. Cette propriété est souvent utile pour des actions telles que la virtualisation dans une expérience de défilement, où il est important de connaître l’emplacement où InteractionTracker s’arrêtera . Il existe deux cas d’usage main pour l’utilisation de la propriété NaturalRestingScale : récupération de sa valeur actuelle dans les arguments d’événement InertieStateEntered ou référencement de cette propriété dans une expressionAnimation lors de la création d’éléments tels que des modificateurs d’inertie.

Owner

IInteractionTrackerOwner associé à InteractionTracker.

Position

Position de sortie calculée par InteractionTracker. La position actuelle est une valeur relative. Pendant les états Idle et CustomAnimation, il se trouve toujours entre les valeurs spécifiées dans les propriétés MinPosition et MaxPosition. La propriété position de l’InteractionTracker peut sortir de cette plage pendant les états d’interaction et d’inertie afin d’afficher un rebond ou une résistance à la limite.

La propriété position de l’InteractionTracker est un Vector3 qui représente la position dans l’axe X, Y et Z. Les canaux X et Y sont les seuls composants qui seront mis à jour par InteractionTracker à ce stade. Les canaux de ce Vector3 ne fluctueront pas en dehors de 0 (valeur par défaut) si minPosition et MaxPosition ne sont pas définis.

PositionInertiaDecayRate

Taux de désintégration de l’inertie pour la position. La plage est comprise entre 0 et 1.

La propriété PositionInertiaDecayRate définit la vitesse à laquelle InteractionTracker ralentit jusqu’à un arrêt lorsqu’il est entré dans l’inertie et que la position change. Plus la valeur est proche de 1, la vitesse d’InteractionTracker ralentit jusqu’à un arrêt et vice versa. Défini en tant que Vector3, chaque composant représente le taux de désintégration d’inertie pour x, y, z en conséquence.

PositionVelocityInPixelsPerSecond

Vitesse actuellement appliquée à la position.

La propriété PositionVelocityInPixelsPerSecond représente la vitesse de position actuelle d’InteractionTracker dans Inertie. Il existe deux cas d’usage main pour cette propriété : récupération de la vitesse de position d’InteractionTracker juste après qu’une interaction s’est produite ou référencer la vitesse la plus actuelle d’InteractionTracker dans une expressionAnimation.

Properties

Collection de propriétés associées à CompositionObject.

(Hérité de CompositionObject)
Scale

Échelle de sortie calculée par InteractionTracker. L’échelle actuelle est une valeur relative qui dépend des valeurs spécifiées dans les propriétés MinScale et MaxScale .

La propriété scale de l’InteractionTracker est un float représentant l’échelle dans l’espace de coordonnées de l’InteractionTracker . Cette valeur commence à 1 et augmente ou diminue en fonction de l’entrée active ou des appels directs pour mettre à jour ou animer la propriété. La propriété de mise à l’échelle lorsque l’InteractionTracker est dans les états Inactif ou CustomAnimation ne change pas de 1, sauf si les propriétés MinScale et MaxScale , dont la valeur par défaut est 1, sont mises à jour. InteractionTracker L’échelle de peut sortir légèrement de cette plage pendant les états Interaction et Inertie afin de montrer un rebond ou une résistance à la limite.

ScaleInertiaDecayRate

Taux de désintégration de l’inertie, pour l’échelle. La plage est comprise entre 0 et 1.

La propriété ScaleInertiaDecayRate définit la vitesse à laquelle InteractionTracker ralentit jusqu’à un arrêt lorsqu’il est entré dans l’inertie et que l’échelle change. Plus la valeur est proche de 1, la vitesse d’InteractionTracker ralentit jusqu’à un arrêt et vice versa. Contrairement à PositionInertiaDecayRate qui est défini en tant que Vector3, ScaleInertiaDecayRate est défini comme un float unique.

ScaleVelocityInPercentPerSecond

Taux de modification de la mise à l’échelle.

La propriété ScaleVelocityInPercentPerSecond représente la vitesse d’échelle actuelle d’InteractionTracker dans Inertie. Saisir la vitesse de position d’InteractionTracker juste après qu’une interaction s’est produite ou référencer la vitesse la plus actuelle d’InteractionTracker dans une ExpressionAnimation.

Méthodes

AdjustPositionXIfGreaterThanThreshold(Single, Single)

Ajuste la coordonnée de position x si elle est supérieure au seuil spécifié.

AdjustPositionYIfGreaterThanThreshold(Single, Single)

Ajuste la coordonnée y de position si elle est supérieure au seuil spécifié.

Close()

Ferme l’objet CompositionObject et libère les ressources système.

(Hérité de CompositionObject)
ConfigureCenterPointXInertiaModifiers(IIterable<CompositionConditionalValue>)

Prend une liste triée de CompositionConditionalValue. Dans un cadre, alors que le suivi est en inertie, la première CompositionConditionalValue à avoir son . Condition " evaluate to true remplace la valeur de zoom CenterPointX que le suivi utilise avec son « . Valeur ». Si aucun n’a la valeur true, centerPointX n’est pas remplacé par ce cadre.

ConfigureCenterPointYInertiaModifiers(IIterable<CompositionConditionalValue>)

Prend une liste triée de CompositionConditionalValue. Dans un cadre, alors que le suivi est en inertie, la première CompositionConditionalValue à avoir son . Condition " évaluer sur true remplace la valeur centerPointY de zoom que le suivi utilise avec son « . Valeur ». Si aucun n’a la valeur true, centerPointY n’est pas remplacé par ce frame.

ConfigurePositionXInertiaModifiers(IIterable<InteractionTrackerInertiaModifier>)

Applique une collection d’objets InteractionTrackerInertiaModifier à l’inertie x d’un Objet InteractionTracker.

La méthode ConfigurePositionXInertiaModifiers applique un individu ou une collection d’InteractionTrackerInertiaModifierau composant x d’InteractionTracker. Le système évalue chaque propriété de condition du modificateur X dans l’ordre dans lequel ils ont été ajoutés à InteractionTracker. Ainsi, l’ordre dans lequel l’objet InteractionTrackerInertiaModifier a dans la collection sera le même que celui avec lequel le système évaluera.

ConfigurePositionYInertiaModifiers(IIterable<InteractionTrackerInertiaModifier>)

Applique une collection d’objets InteractionTrackerInertiaModifier à l’inertie y d’un Objet InteractionTracker.

La méthode ConfigurePositionYInertiaModifiers applique un individu ou une collection d’InteractionTrackerInertiaModifiers au composant y d’InteractionTracker. Le système évalue chaque propriété de condition du modificateur Y dans l’ordre dans lequel ils ont été ajoutés à InteractionTracker. Ainsi, l’ordre dans lequel l’objet InteractionTrackerInertiaModifier a dans la collection sera le même que celui avec lequel le système évaluera.

ConfigureScaleInertiaModifiers(IIterable<InteractionTrackerInertiaModifier>)

Applique une collection d’objets InteractionTrackerInertiaModifier à l’échelle d’un Objet InteractionTracker.

La méthode ConfigureScaleInertiaModifiers applique un individu ou une collection d’InteractionTrackerInertiaModifierau composant de mise à l’échelle d’InteractionTracker. Le système évalue chaque propriété de condition du modificateur d’échelle dans l’ordre dans lequel ils ont été ajoutés à InteractionTracker. Ainsi, l’ordre dans lequel l’objet InteractionTrackerInertiaModifier a dans la collection sera le même que celui avec lequel le système évaluera.

ConfigureVector2PositionInertiaModifiers(IIterable<InteractionTrackerVector2InertiaModifier>)

Applique une collection d’objets InteractionTrackerInertiaModifier à la position d’un Objet InteractionTracker.

ConnectAnimation(String, CompositionAnimation)

Se connecte et animation.

(Hérité de CompositionObject)
Create(Compositor)

Crée un instance d’InteractionTracker.

Cette méthode Create instancie un Objet InteractionTracker. Après avoir créé la définition des propriétés d’InteractionTracker , l’attachement d’un Élément VisualInteractionSource et le référencement de la position ou de l’échelle dans une ExpressionAnimation, l’entrée active peut piloter l’ExpressionAnimation.

CreateWithOwner(Compositor, IInteractionTrackerOwner)

Crée une instance d’InteractionTracker avec le propriétaire spécifié.

Cette méthode Create instancie un Objet InteractionTracker avec un propriétaire pour l’inscription aux rappels. Après avoir créé la définition des propriétés d’InteractionTracker , l’attachement d’un Élément VisualInteractionSource et le référencement de la position ou de l’échelle dans une ExpressionAnimation, l’entrée active peut piloter l’ExpressionAnimation. La création d’InteractionTracker avec un propriétaire n’est nécessaire que si l’application doit recevoir des rappels concernant l’état et les valeurs d’InteractionTracker.

DisconnectAnimation(String)

Déconnecte une animation.

(Hérité de CompositionObject)
Dispose()

Exécute les tâches définies par l'application associées à la libération ou à la redéfinition des ressources non managées.

(Hérité de CompositionObject)
GetBindingMode(InteractionTracker, InteractionTracker)

Récupère le mode d’axe de liaison entre deux suivis d’interaction.

PopulatePropertyInfo(String, AnimationPropertyInfo)

Définit une propriété qui peut être animée.

(Hérité de CompositionObject)
SetBindingMode(InteractionTracker, InteractionTracker, InteractionBindingAxisModes)

Définit le mode d’axe de liaison entre deux suivis d’interaction.

StartAnimation(String, CompositionAnimation)

Connecte une animation avec la propriété spécifiée de l’objet et démarre l’animation.

(Hérité de CompositionObject)
StartAnimation(String, CompositionAnimation, AnimationController)

Connecte une animation avec la propriété spécifiée de l’objet et démarre l’animation.

(Hérité de CompositionObject)
StartAnimationGroup(ICompositionAnimationBase)

Démarre un groupe d’animations.

La méthode StartAnimationGroup sur CompositionObject vous permet de démarrer CompositionAnimationGroup. Toutes les animations du groupe sont démarrées en même temps sur l’objet .

(Hérité de CompositionObject)
StopAnimation(String)

Déconnecte une animation de la propriété spécifiée et arrête l’animation.

(Hérité de CompositionObject)
StopAnimationGroup(ICompositionAnimationBase)

Arrête un groupe d’animations.

(Hérité de CompositionObject)
TryGetAnimationController(String)

Renvoie un AnimationController pour l’animation en cours d’exécution sur la propriété spécifiée.

(Hérité de CompositionObject)
TryUpdatePosition(Vector3)

Tente de mettre à jour la position d’InteractionTracker.

La méthode TryUpdatePosition met à jour l’emplacement d’InteractionTracker à la position Vector3 spécifiée en tant que paramètre. TryUpdatePosition permet de définir de manière déclarative la position d’InteractionTracker à tout moment (au début, à partir d’un événement entré dans l’état, etc.). TryUpdatePosition peut être appelé à partir de l’état Inactif, CustomAnimation ou Inertie. Cela déplace la position d’InteractionTracker vers la position définie et passe à l’état inactif.

TryUpdatePosition(Vector3, InteractionTrackerClampingOption)

Tente de mettre à jour la position d’InteractionTracker à l’aide de l’option de verrouillage spécifiée.

TryUpdatePosition(Vector3, InteractionTrackerClampingOption, InteractionTrackerPositionUpdateOption)

Tente de mettre à jour la position d’InteractionTracker à l’aide de l’option de verrouillage spécifiée.

TryUpdatePositionBy(Vector3)

Tente d’ajuster la position d’InteractionTracker selon le montant spécifié.

La méthode TryUpdatePositionBy met à jour l’emplacement actuel d’InteractionTracker par le delta Vector3 spécifié en tant que paramètre. De la même façon que TryUpdatePosition, TryUpdatePositionBy permet de déplacer de manière déclarative InteractionTracker par un delta défini sans avoir besoin d’une animation ou d’une inertie. TryUpdatePositionBy peut être appelé à partir de l’état Inactif, CustomAnimation ou Inertie. Cela déplace la position d’InteractionTracker par le delta défini et passe à l’état inactif.

TryUpdatePositionBy(Vector3, InteractionTrackerClampingOption)

Tente d’ajuster la position de l’Objet InteractionTracker en fonction de la quantité spécifiée à l’aide de l’option de serrage spécifiée.

TryUpdatePositionWithAdditionalVelocity(Vector3)

Tente de mettre à jour la position d’InteractionTracker en ajoutant de la vélocité.

La méthode TryUpdatePositionWithAdditionalVelocity ajoute l’entrée Vector3 représentant une vitesse supplémentaire à la vitesse actuelle d’InteractionTracker. Par conséquent, étant donné que la vitesse d’InteractionTracker a maintenant changé, la position de repos ciblée pour InteractionTracker change à présent. TryUpdatePositionWithAdditionalVelocity peut être appelé à partir des états Idle, Inertie ou CustomAnimation. Cela permet d’ajouter ou de mettre à jour la vitesse d’InteractionTracker et d’entrer l’état Inertie.

TryUpdatePositionWithAnimation(CompositionAnimation)

Tente de mettre à jour la position d’InteractionTracker en appliquant une animation.

La méthode TryUpdatePositionWithAnimation met à jour la position d’InteractionTracker en fonction de l’entrée CompositionAnimation en tant que paramètre. Cette méthode est utilisée dans les situations dans lesquelles le mouvement d’InteractionTracker doit être défini par une animation spécifique, au lieu de l’expérience d’inertie traditionnelle. TryUpdatePositionWithAnimation peut être appelé à partir de l’état Inactif ou Inertie . Ainsi, la position d’InteractionTracker est pilotée par l’animation définie et entre dans l’état CustomAnimation.

TryUpdateScale(Single, Vector3)

Tente de mettre à jour l’échelle avec la valeur spécifiée.

La méthode TryUpdateScale met à jour l’emplacement de mise à l’échelle d’InteractionTracker avec la position d’échelle et le point central spécifiés en tant que paramètre. TryUpdateScale permet de définir de manière déclarative l’échelle d’InteractionTracker à tout moment (au début, à partir d’un événement entré dans l’état, etc.). TryUpdateScale peut être appelé à partir de l’état Inactif, CustomAnimation ou Inertie. Cela déplace la position d’échelle d’InteractionTracker vers la position définie et passe à l’état inactif.

TryUpdateScaleWithAdditionalVelocity(Single, Vector3)

Tente de mettre à jour l’échelle en ajoutant la vitesse spécifiée.

La méthode TryUpdateScaleWithAdditionalVelocity ajoute le scalaire entré représentant une vitesse supplémentaire à la vitesse actuelle d’InteractionTracker , et déplace le point central vers le vector3 entré. Par conséquent, étant donné que la vitesse d’InteractionTracker a maintenant changé, la position d’échelle de repos ciblée pour InteractionTracker change à présent. TryUpdateScaleWithAdditionalVelocity peut être appelé à partir des états Idle, Inertie ou CustomAnimation. Cela permet d’ajouter ou de mettre à jour la vélocité d’InteractionTracker et d’entrer l’état Inertie.

TryUpdateScaleWithAnimation(CompositionAnimation, Vector3)

Tente de mettre à jour l’échelle avec l’animation spécifiée.

La méthode TryUpdateScaleWithAnimation met à jour la position d’échelle d’InteractionTracker en fonction de la compositionAnimation entrée en tant que paramètre. Cette méthode est utilisée dans les situations dans lesquelles le mouvement d’InteractionTracker doit être défini par une animation spécifique, au lieu de l’expérience d’inertie traditionnelle. TryUpdateScaleWithAnimation peut être appelé à partir de l’état Inactif ou Inertie . Ainsi, la position d’InteractionTracker est pilotée par l’animation définie et entre dans l’état CustomAnimation.

S’applique à

Voir aussi