Partager via


SpatialGestureRecognizer Classe

Définition

Interprète les interactions des utilisateurs à partir des mains, des contrôleurs de mouvement et des commandes vocales système pour faire apparaître des événements de mouvement spatial, que les utilisateurs ciblent à l’aide de leur regard ou du rayon pointant d’un contrôleur de mouvement.

public ref class SpatialGestureRecognizer sealed
/// [Windows.Foundation.Metadata.Activatable(Windows.UI.Input.Spatial.ISpatialGestureRecognizerFactory, 131072, "Windows.Foundation.UniversalApiContract")]
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 131072)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class SpatialGestureRecognizer final
[Windows.Foundation.Metadata.Activatable(typeof(Windows.UI.Input.Spatial.ISpatialGestureRecognizerFactory), 131072, "Windows.Foundation.UniversalApiContract")]
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 131072)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public sealed class SpatialGestureRecognizer
function SpatialGestureRecognizer(settings)
Public NotInheritable Class SpatialGestureRecognizer
Héritage
Object Platform::Object IInspectable SpatialGestureRecognizer
Attributs

Configuration requise pour Windows

Famille d’appareils
Windows 10 (introduit dans 10.0.10586.0 - for Xbox, see UWP features that aren't yet supported on Xbox)
API contract
Windows.Foundation.UniversalApiContract (introduit dans v2.0)

Remarques

Les mouvements spatiaux sont une forme clé d’entrée pour les casques Mixed Reality tels que HoloLens. En acheminant les interactions de SpatialInteractionManager vers le SpatialGestureRecognizer d’un hologramme, les applications peuvent détecter uniformément les événements d’appui, de conservation, de manipulation et de navigation entre les mains, la voix et les contrôleurs de mouvement.

Notez que les mouvements spatiaux ne sont pas détectés pour les entrées à partir de boîtiers de commande, claviers ou souris.

SpatialGestureRecognizer effectue uniquement l’ambiguïté minimale entre l’ensemble de mouvements que vous demandez. Par exemple, si vous demandez simplement appuyez, l’utilisateur peut maintenir son doigt vers le bas aussi longtemps qu’il le souhaite et un appui se produit toujours. Si vous demandez à la fois appuyez et maintenez enfoncé, après environ une seconde de maintien du doigt vers le bas, le mouvement sera promu en une mise en attente et un appui ne se produira plus.

Pour utiliser SpatialGestureRecognizer, gérez l’événement InteractionDetected de SpatialInteractionManager et récupérez l’objet SpatialPointerPose qui y est exposé. Utilisez le rayon du regard de l’utilisateur de cette pose pour croiser les hologrammes et les maillages de surface dans l’environnement de l’utilisateur, afin de déterminer avec quoi l’utilisateur a l’intention d’interagir. Ensuite, acheminez spatialInteraction dans les arguments d’événement vers le SpatialGestureRecognizer de l’hologramme cible, à l’aide de sa méthode CaptureInteraction . Cela commence à interpréter cette interaction en fonction de l’élément SpatialGestureSettings défini sur ce module de reconnaissance au moment de la création ou par TrySetGestureSettings.

Lors du ciblage d’une interaction spatiale, telle qu’un mouvement de la main, l’appui du contrôleur de mouvement ou l’interaction vocale, les applications doivent choisir un rayon de pointage disponible à partir du SpatialPointerPose de l’interaction, en fonction de la nature du SpatialInteractionSource de l’interaction :

  • Si la source d’interaction ne prend pas en charge le pointage (IsPointingSupported a la valeur false), l’application doit cibler en fonction du regard de l’utilisateur, disponible via la propriété Head .
  • Si la source d’interaction prend en charge le pointage (IsPointingSupported a la valeur true), l’application peut plutôt cibler en fonction de la pose de pointeur de la source, disponible via la méthode TryGetInteractionSourcePose .

L’application doit ensuite croiser le rayon de pointage choisi avec ses propres hologrammes ou avec le maillage de mappage spatial pour afficher les curseurs et déterminer avec quoi l’utilisateur a l’intention d’interagir.

Pour les applications utilisant le modèle d’entrée du regard et de la validation, en particulier sur HoloLens (première génération), SpatialGestureRecognizer peut être utilisé pour activer des mouvements composites basés sur l’événement « select ». En acheminant les interactions de SpatialInteractionManager vers le SpatialGestureRecognizer d’un hologramme, les applications peuvent détecter uniformément les événements d’appui, de conservation, de manipulation et de navigation entre les mains, la voix et les périphériques d’entrée spatiale, sans avoir à gérer les pressions et les relâchements manuellement.

Constructeurs

SpatialGestureRecognizer(SpatialGestureSettings)

Initialise un nouveau SpatialGestureRecognizer avec les paramètres de mouvement spécifiés.

Propriétés

GestureSettings

Obtient le SpatialGestureSettings actuel pour ce module de reconnaissance.

Méthodes

CancelPendingGestures()

Annule tous les mouvements en cours et abandonne toutes les interactions capturées.

CaptureInteraction(SpatialInteraction)

Suivez tous les événements d’entrée qui se produisent dans le cadre de l’interaction spécifiée.

TrySetGestureSettings(SpatialGestureSettings)

Tente de modifier les paramètres de mouvement pour ce module de reconnaissance.

Événements

HoldCanceled

Se produit lorsqu’un mouvement d’attente est annulé.

HoldCompleted

Se produit lorsqu’un mouvement d’attente se termine.

HoldStarted

Se produit lorsqu’une interaction devient un mouvement d’attente .

ManipulationCanceled

Se produit lorsqu’un mouvement de manipulation est annulé.

ManipulationCompleted

Se produit lorsqu’un mouvement de manipulation est terminé.

ManipulationStarted

Se produit lorsqu’une interaction devient un mouvement de manipulation .

ManipulationUpdated

Se produit lorsqu’un mouvement de manipulation est mis à jour en raison d’un mouvement de la main.

NavigationCanceled

Se produit lorsqu’un mouvement de navigation est annulé.

NavigationCompleted

Se produit lorsqu’un mouvement de navigation est terminé.

NavigationStarted

Se produit lorsqu’une interaction devient un mouvement de navigation .

NavigationUpdated

Se produit lorsqu’un mouvement de navigation est mis à jour en raison d’un mouvement de la main ou du contrôleur de mouvement.

RecognitionEnded

Se produit lorsque la reconnaissance de mouvement se termine, en raison de l’achèvement ou de l’annulation d’un mouvement (il s’agit du dernier événement à déclencher).

RecognitionStarted

Se produit lorsque la reconnaissance des mouvements commence (il s’agit du premier événement à déclencher).

Tapped

Se produit lorsqu’un mouvement Tap ou DoubleTap est reconnu.

S’applique à

Voir aussi