SpatialGestureRecognizer Classe
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Interpreta as interações do usuário de mãos, controladores de movimento e comandos de voz do sistema para exibir eventos de gesto espacial, que os usuários direcionam usando o foco ou o raio apontador de um controlador de movimento.
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
- Herança
- Atributos
Requisitos do Windows
Família de dispositivos |
Windows 10 (introduzida na 10.0.10586.0 - for Xbox, see UWP features that aren't yet supported on Xbox)
|
API contract |
Windows.Foundation.UniversalApiContract (introduzida na v2.0)
|
Comentários
Gestos espaciais são uma forma chave de entrada para headsets Realidade Misturada, como o HoloLens. Ao rotear interações do SpatialInteractionManager para o SpatialGestureRecognizer de um holograma, os aplicativos podem detectar eventos de Toque, Retenção, Manipulação e Navegação uniformemente entre mãos, voz e controladores de movimento.
Observe que gestos espaciais não são detectados para entrada de gamepads, teclados ou mouses.
SpatialGestureRecognizer executa apenas a desambiguação mínima entre o conjunto de gestos solicitado. Por exemplo, se você solicitar apenas Tocar, o usuário poderá segurar o dedo enquanto quiser e um Toque ainda ocorrerá. Se você solicitar tocar e segurar, depois de cerca de um segundo segurando o dedo, o gesto promoverá um Hold e um Toque não ocorrerá mais.
Para usar SpatialGestureRecognizer, manipule o evento InteractionDetected do SpatialInteractionManager e pegue o SpatialPointerPose exposto lá. Use o raio de foco do usuário dessa pose para intersecionar com os hologramas e as malhas de superfície no ambiente do usuário, a fim de determinar com que o usuário pretende interagir. Em seguida, encaminhe SpatialInteraction nos argumentos de evento para SpatialGestureRecognizer do holograma de destino, usando seu método CaptureInteraction . Isso começa a interpretar essa interação de acordo com o conjunto SpatialGestureSettings nesse reconhecedor no momento da criação ou por TrySetGestureSettings.
Ao direcionar uma interação espacial, como um gesto de mão, pressionamento do controlador de movimento ou interação de voz, os aplicativos devem escolher um raio apontando disponível no SpatialPointerPose da interação, com base na natureza do SpatialInteractionSource da interação:
- Se a origem de interação não der suporte a apontar (IsPointingSupported for false), o aplicativo deverá ser direcionado com base no foco do usuário, disponível por meio da propriedade Head .
- Se a origem da interação oferecer suporte a apontar (IsPointingSupported for true), o aplicativo poderá, em vez disso, ser direcionado com base na pose do ponteiro da origem, disponível por meio do método TryGetInteractionSourcePose .
Em seguida, o aplicativo deve cruzar o raio apontador escolhido com seus próprios hologramas ou com a malha de mapeamento espacial para renderizar cursores e determinar com o que o usuário pretende interagir.
Para aplicativos que usam o modelo de entrada de foco e confirmação, especialmente no HoloLens (primeira geração), SpatialGestureRecognizer pode ser usado para habilitar gestos compostos criados sobre o evento 'select'. Ao rotear interações do SpatialInteractionManager para o SpatialGestureRecognizer de um holograma, os aplicativos podem detectar eventos de Toque, Retenção, Manipulação e Navegação uniformemente entre mãos, voz e dispositivos de entrada espacial, sem precisar lidar manualmente com pressionamentos e versões.
Construtores
SpatialGestureRecognizer(SpatialGestureSettings) |
Inicializa um novo SpatialGestureRecognizer com as configurações de gesto especificadas. |
Propriedades
GestureSettings |
Obtém o SpatialGestureSettings atual para esse reconhecedor. |
Métodos
CancelPendingGestures() |
Cancela todos os gestos em andamento e abandona as interações capturadas. |
CaptureInteraction(SpatialInteraction) |
Acompanhe todos os eventos de entrada que ocorrem como parte da interação especificada. |
TrySetGestureSettings(SpatialGestureSettings) |
Tenta alterar as configurações de gesto para esse reconhecedor. |
Eventos
HoldCanceled |
Ocorre quando um gesto de espera é cancelado. |
HoldCompleted |
Ocorre quando um gesto de espera é concluído. |
HoldStarted |
Ocorre quando uma interação se torna um gesto de Espera . |
ManipulationCanceled |
Ocorre quando um gesto de Manipulação é cancelado. |
ManipulationCompleted |
Ocorre quando um gesto de Manipulação é concluído. |
ManipulationStarted |
Ocorre quando uma interação se torna um gesto de Manipulação . |
ManipulationUpdated |
Ocorre quando um gesto de Manipulação é atualizado devido ao movimento da mão. |
NavigationCanceled |
Ocorre quando um gesto de navegação é cancelado. |
NavigationCompleted |
Ocorre quando um gesto de navegação é concluído. |
NavigationStarted |
Ocorre quando uma interação se torna um gesto de Navegação . |
NavigationUpdated |
Ocorre quando um gesto de Navegação é atualizado devido à movimentação do controlador de movimento ou mão. |
RecognitionEnded |
Ocorre quando o reconhecimento de gestos termina, devido à conclusão ou cancelamento de um gesto (este é o último evento a ser acionado). |
RecognitionStarted |
Ocorre quando o reconhecimento de gestos começa (este é o primeiro evento a ser acionado). |
Tapped |
Ocorre quando um gesto de Toque ou DoubleTap é reconhecido. |