Sdílet prostřednictvím


Gesta – MRTK2

Gesta jsou vstupní události založené na lidských rukou. Existují dva typy zařízení, která v MRTK vyvolávají události zadávání gest:

Oba tyto vstupní zdroje používají profil Gesto Nastavení k překladu událostí dotykového ovládání a gest Unity do vstupních akcí MRTK. Tento profil najdete v profilu vstupního systému Nastavení.

Profil gesta

Události gest

Události gest se přijímají implementací jednoho z rozhraní obslužných rutin gest: IMixedRealityGestureHandler nebo IMixedRealityGestureHandler<TYPE> (viz tabulka obslužných rutin událostí).

Příklad scény příklad implementace obslužné rutiny události gest.

Při implementaci obecné verze mohou události OnGestureCompleted a OnGestureUpdated přijímat typová data následujících typů:

  • Vector2 - Gesto pozice 2D. Vyrobeno dotykovou obrazovkou informovat o jejich deltaPosition.
  • Vector3 - Gesto pozice 3D. Vyrábí HoloLens s cílem informovat:
  • Quaternion - Gesto otočení 3D. K dispozici pro vlastní vstupní zdroje, ale aktuálně neprodukované žádnými z existujících zdrojů.
  • MixedRealityPose - Kombinované 3D gesto pozice/otočení. K dispozici pro vlastní vstupní zdroje, ale aktuálně neprodukované žádnými z existujících zdrojů.

Pořadí událostí

V závislosti na vstupu uživatele existují dva hlavní řetězy událostí:

  • "Blokování":

    1. Přidržte klepnutí:
      • spustit manipulaci
    2. Podržte klepnutí nad rámec HoldStartDuration:
      • spustit blokování
    3. Klepnutí na verzi:
      • complete Hold
      • kompletní manipulace
  • "Přesunout":

    1. Přidržte klepnutí:
      • spustit manipulaci
    2. Podržte klepnutí nad rámec HoldStartDuration:
      • spustit blokování
    3. Přesuňte ruku za NavigationStartThreshold:
      • zrušit blokování
      • spustit navigaci
    4. Klepnutí na verzi:
      • kompletní manipulace
      • úplná navigace

Příklad scény

Scéna HandInteractionGestureEventsExample (Assets/MRTK/Examples/Demos/HandTracking/Scene) ukazuje, jak použít výsledek ukazatele k vytvoření objektu v umístění hitu.

Skript GestureTester (Assets/MRTK/Examples/Demos/HandTracking/Script) je ukázková implementace pro vizualizaci událostí gest přes GameObjects. Funkce obslužné rutiny mění barvu objektů indikátoru a zobrazují poslední zaznamenané události v textových objektech ve scéně.