Share via


Kézmozdulatok – MRTK2

A kézmozdulatok emberi kézen alapuló bemeneti események. Az MRTK-ban kétféle eszköz emeli ki a kézmozdulat-beviteli eseményeket:

Mindkét bemeneti forrás a Gesture Gépház profillal fordítja le a Unity érintéses és kézmozdulatos eseményeit az MRTK bemeneti műveleteire. Ez a profil az Input System Gépház profil alatt található.

Kézmozdulatprofil

Kézmozdulat-események

A kézmozdulatesemények a kézmozdulatok kezelőfelületének implementálásával fogadhatók: IMixedRealityGestureHandler vagy IMixedRealityGestureHandler<TYPE> (lásd az eseménykezelők táblázatát).

A példajelenet egy kézmozdulat-eseménykezelő példamegvalósítását szemlélteti.

Az általános verzió implementálásakor az OnGestureCompleted és az OnGestureUpdated események a következő típusú gépelt adatokat fogadhatják:

  • Vector2 - 2D pozíció kézmozdulat. Által előállított érintőképernyők, hogy tájékoztassa őket deltaPosition.
  • Vector3 - 3D pozíciómozdulat. A HoloLens az alábbiakról tájékoztatja:
  • Quaternion - Térbeli forgatási kézmozdulat. Egyéni bemeneti források számára érhető el, de jelenleg egyik meglévő sem készíti el.
  • MixedRealityPose - Kombinált 3D pozíció/forgatás kézmozdulat. Egyéni bemeneti források számára érhető el, de jelenleg egyik meglévő sem készíti el.

Események sorrendje

A felhasználói bemenettől függően két fő eseménylánc van:

  • "Hold":

    1. Tartsa lenyomva az ujját:
      • manipuláció indítása
    2. Tartsa lenyomva a koppintást a HoldStartDurationon túl:
      • indítási várakoztatás
    3. Kiadási koppintás:
      • teljes visszatartás
      • teljes manipuláció
  • "Áthelyezés":

    1. Tartsa lenyomva az ujját:
      • manipuláció indítása
    2. Tartsa lenyomva a koppintást a HoldStartDurationon túl:
      • indítási várakoztatás
    3. Vigye a kezét a NavigationStartThreshold fölé:
      • visszatartás megszakítása
      • navigálás indítása
    4. Kiadási koppintás:
      • teljes manipuláció
      • teljes navigáció

Példajelenet

A HandInteractionGestureEventsExample (Assets/MRTK/Examples/Demos/HandTracking/Scenes) jelenet bemutatja, hogyan hozhat létre objektumot a találat helyén a mutató eredményével.

A GestureTester (Assets/MRTK/Examples/Demos/HandTracking/Script) szkript egy példa implementáció a kézmozdulat-események GameObjectsen keresztüli megjelenítésére. A kezelőfüggvények megváltoztatják a mutatóobjektumok színét, és megjelenítik az utolsó rögzített eseményt a jelenet szövegobjektumaiban.