SpatialGestureRecognizer Kelas
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Menafsirkan interaksi pengguna dari tangan, pengontrol gerakan, dan perintah suara sistem untuk menampilkan peristiwa gerakan spasial, yang ditargetkan pengguna menggunakan tatapan mereka atau sinar penunjuk pengontrol gerakan.
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
- Warisan
- Atribut
Persyaratan Windows
Rangkaian perangkat |
Windows 10 (diperkenalkan dalam 10.0.10586.0 - for Xbox, see UWP features that aren't yet supported on Xbox)
|
API contract |
Windows.Foundation.UniversalApiContract (diperkenalkan dalam v2.0)
|
Keterangan
Gerakan spasial adalah bentuk kunci input untuk headset Mixed Reality seperti HoloLens. Dengan merutekan interaksi dari SpatialInteractionManager ke SpatialGestureRecognizer hologram, aplikasi dapat mendeteksi peristiwa Ketuk, Tahan, Manipulasi, dan Navigasi secara seragam di seluruh pengontrol tangan, suara, dan gerakan.
Perhatikan bahwa gerakan spasial tidak terdeteksi untuk input dari gamepad, keyboard, atau tikus.
SpatialGestureRecognizer hanya melakukan disambiguasi minimal antara serangkaian gerakan yang Anda minta. Misalnya, jika Anda meminta hanya Ketuk, pengguna dapat menahan jari mereka selama mereka suka dan Ketukan akan tetap terjadi. Jika Anda meminta Ketuk dan Tahan, setelah sekitar satu detik menahan jarinya, gerakan akan dipromosikan ke Penangguhan dan Ketuk tidak akan lagi terjadi.
Untuk menggunakan SpatialGestureRecognizer, tangani peristiwa InteractionDetected SpatialInteractionManager dan ambil SpatialPointerPose yang terekspos di sana. Gunakan sinar tatapan pengguna dari pose ini untuk bersinggungan dengan hologram dan jala permukaan di lingkungan pengguna, untuk menentukan apa yang ingin berinteraksi dengan pengguna. Kemudian, rutekan SpatialInteraction dalam argumen peristiwa ke SpatialGestureRecognizer hologram target, menggunakan metode CaptureInteraction-nya . Ini mulai menginterpretasikan interaksi tersebut sesuai dengan SpatialGestureSettings yang diatur pada pengenal tersebut pada waktu pembuatan atau oleh TrySetGestureSettings.
Saat menargetkan interaksi spasial, seperti gerakan tangan, tekan pengontrol gerakan, atau interaksi suara, aplikasi harus memilih sinar penunjuk yang tersedia dari SpatialPointerPose interaksi, berdasarkan sifat SpatialInteractionSource interaksi:
- Jika sumber interaksi tidak mendukung penunjukan (IsPointingSupported salah), aplikasi harus menargetkan berdasarkan tatapan pengguna, tersedia melalui properti Head .
- Jika sumber interaksi mendukung penunjuk (IsPointingSupported benar), aplikasi dapat menargetkan berdasarkan pose pointer sumber, tersedia melalui metode TryGetInteractionSourcePose .
Aplikasi kemudian harus berpotongan dengan sinar penunjuk yang dipilih dengan hologramnya sendiri atau dengan jala pemetaan spasial untuk merender kursor dan menentukan apa yang ingin berinteraksi dengan pengguna.
Untuk aplikasi yang menggunakan model input tatapan dan penerapan, terutama pada HoloLens (gen pertama), SpatialGestureRecognizer dapat digunakan untuk mengaktifkan gerakan komposit yang dibangun di atas peristiwa 'pilih'. Dengan merutekan interaksi dari SpatialInteractionManager ke SpatialGestureRecognizer hologram, aplikasi dapat mendeteksi peristiwa Ketuk, Tahan, Manipulasi, dan Navigasi secara seragam di seluruh perangkat input tangan, suara, dan spasial, tanpa harus menangani pers dan rilis secara manual.
Konstruktor
SpatialGestureRecognizer(SpatialGestureSettings) |
Menginisialisasi SpatialGestureRecognizer baru dengan pengaturan gerakan yang ditentukan. |
Properti
GestureSettings |
Mendapatkan SpatialGestureSettings saat ini untuk pengenal ini. |
Metode
CancelPendingGestures() |
Membatalkan semua gerakan yang sedang berlangsung dan meninggalkan interaksi yang ditangkap. |
CaptureInteraction(SpatialInteraction) |
Lacak semua peristiwa input yang terjadi sebagai bagian dari interaksi yang ditentukan. |
TrySetGestureSettings(SpatialGestureSettings) |
Mencoba mengubah pengaturan gerakan untuk pengenal ini. |
Acara
HoldCanceled |
Terjadi saat gerakan Tahan dibatalkan. |
HoldCompleted |
Terjadi saat gerakan Tahan selesai. |
HoldStarted |
Terjadi ketika interaksi menjadi gerakan Penangguhan . |
ManipulationCanceled |
Terjadi ketika gerakan Manipulasi dibatalkan. |
ManipulationCompleted |
Terjadi ketika gerakan Manipulasi selesai. |
ManipulationStarted |
Terjadi ketika interaksi menjadi gerakan Manipulasi . |
ManipulationUpdated |
Terjadi ketika gerakan Manipulasi diperbarui karena gerakan tangan. |
NavigationCanceled |
Terjadi ketika gerakan Navigasi dibatalkan. |
NavigationCompleted |
Terjadi ketika gerakan Navigasi selesai. |
NavigationStarted |
Terjadi ketika interaksi menjadi gerakan Navigasi . |
NavigationUpdated |
Terjadi ketika gerakan Navigasi diperbarui karena gerakan pengontrol tangan atau gerakan. |
RecognitionEnded |
Terjadi ketika pengenalan gerakan berakhir, karena penyelesaian atau pembatalan gerakan (ini adalah peristiwa terakhir yang diaktifkan). |
RecognitionStarted |
Terjadi ketika pengenalan gerakan dimulai (ini adalah peristiwa pertama yang diaktifkan). |
Tapped |
Terjadi saat gerakan Ketuk atau DoubleTap dikenali. |