SpatialGestureRecognizer Classe
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
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
- 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. |