Partage via


InteractionTrackerInertiaRestingValue Classe

Définition

ExpressionAnimation qui définit la position de repos après une interaction.

La classe InteractionTrackerInertiaRestingValue définit deux ExpressionAnimationqui calculent une position de repos explicite pour InteractionTracker lorsqu’une condition particulière est remplie. InteractionTrackerInertiaRestingValue est défini en deux parties : l’instruction conditionnelle dans laquelle l’emplacement de repos spécifique d’InteractionTracker doit être défini explicitement si la valeur est true et l’équation qui décrit une relation mathématique qui génère l’emplacement. Utilisez la classe InteractionTrackerInertiaRestingValue lorsque vous devez vous assurer qu’InteractionTracker se trouve à un emplacement spécifique après qu’une interaction s’est produite.

public ref class InteractionTrackerInertiaRestingValue sealed : InteractionTrackerInertiaModifier
/// [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 InteractionTrackerInertiaRestingValue final : InteractionTrackerInertiaModifier
[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 InteractionTrackerInertiaRestingValue : InteractionTrackerInertiaModifier
Public NotInheritable Class InteractionTrackerInertiaRestingValue
Inherits InteractionTrackerInertiaModifier
Héritage
Object Platform::Object IInspectable CompositionObject InteractionTrackerInertiaModifier InteractionTrackerInertiaRestingValue
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 MandatorySingleSnapPoints(ContainerVisual containerVisual, Visual contentVisual)
{
  //
  // Set up our inertia modifiers to behave as dmanip's "single mandatory" snap-points, at a
  // regular interval of 50px.
  //

  const float snapPointRange = 50.0f;

  //
  // Configure a "snap-point" to handle upward direction (to previous item).
  //

  var modifier1 = InteractionTrackerInertiaRestingValue.Create(_compositor);

  // Add a condition for when this upward “snap-point” applies.
  modifier1.Condition = _compositor.CreateExpressionAnimation(
    "this.Target.NaturalRestingPosition.y < " + 
    "(this.StartingValue - mod(this.StartingValue, snapPointRange) + snapPointRange / 2)");

  modifier1.Condition.SetScalarParameter("snapPointRange", snapPointRange);

  // Configure the resting spot when the condition is met 
  modifier1.EndPoint = _compositor.CreateExpressionAnimation(
    "this.StartingValue - mod(this.StartingValue, snapPointRange)");

  modifier1.EndPoint.SetScalarParameter("snapPointRange", snapPointRange);

  //
  // Configure a "snap-point" to handle downward direction (to next item).
  //

  var modifier2 = InteractionTrackerInertiaRestingValue.Create(_compositor);

  // Add a condition for when this downward “snap-point” applies.
  modifier2.Condition = _compositor.CreateExpressionAnimation(
    "this.Target.NaturalRestingPosition.y >= " + 
    "(this.StartingValue - mod(this.StartingValue, snapPointRange) + snapPointRange / 2)");

  modifier2.Condition.SetScalarParameter("snapPointRange", snapPointRange);

  // Configure the resting spot when the condition is met.
  modifier2.EndPoint = _compositor.CreateExpressionAnimation(
    "this.StartingValue + snapPointRange - mod(this.StartingValue, snapPointRange)");

  modifier2.EndPoint.SetScalarParameter("snapPointRange", snapPointRange);

  var modifiers = new InteractionTrackerInertiaRestingValue[] { modifier1, modifier2 };

  //
  // Add our "snap-point" inertia modifiers to the Y position of the InteractionTracker.
  //

  _tracker.ConfigurePositionYInertiaModifiers(modifiers);
}

Remarques

Lorsque vous attachez le modificateur InteractionTrackerInertiaRestingValue à l’InteractionTracker, vous le configurez sur la position X/Y ou l’échelle.

L’ExpressionAnimation définissant la propriété de condition n’est exécutée qu’une seule fois, lorsque l’interaction se termine (relâchement du doigt), tandis que l’expression RestingValue est exécutée chaque image.

Les modificateurs InteractionTrackerInertiaRestingValue définissent explicitement la position de repos d’InteractionTracker lorsque la condition est remplie. Toutefois, il ne définit pas le mouvement vers cet emplacement explicite : le système le gère. Ainsi, si vous avez besoin d’InteractionTracker pour prendre un mouvement particulier, mais que vous n’avez pas besoin qu’il se pose à un endroit exact, utilisez le modificateur InteractionTrackerInertiaMotion .

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)
Condition

ExpressionAnimation décrivant quand le modificateur doit être appliqué.

La propriété Condition est une ExpressionAnimation qui définit quand l’InteractionTracker doit avoir une position de repos spécifique. Cette expression est exécutée une fois après l’interaction et doit être résolue en type Bool. Sinon, une erreur est générée lors de l’évaluation de la condition. Pour plus d’informations sur la création d’expressions, consultez la page de classe ExpressionAnimation .

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)
Properties

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

(Hérité de CompositionObject)
RestingValue

ExpressionAnimation pour définir la valeur de repos d’InteractionTracker si l’expression de la propriété Condition a la valeur true.

La propriété Resting est une ExpressionAnimation qui décrit l’emplacement vers lequel InteractionTracker se déplacera après une interaction si la condition correspondante est remplie. Cette expression est exécutée à chaque frame lorsque InteractionTracker se trouve dans Inertie et doit être résolue en un type Float, sinon une erreur est générée lors de l’évaluation de l’équation. Pour plus d’informations sur la création d’expressions, consultez la page de classe ExpressionAnimation .

Méthodes

Close()

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

(Hérité de CompositionObject)
ConnectAnimation(String, CompositionAnimation)

Se connecte et animation.

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

Crée un instance d’InteractionTrackerInertiaRestingValue.

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)
PopulatePropertyInfo(String, AnimationPropertyInfo)

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

(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)
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)
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)

S’applique à

Voir aussi