Compartilhar via


SpatialGestureRecognizer Classe

Definição

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
Object Platform::Object IInspectable SpatialGestureRecognizer
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.

Aplica-se a

Confira também