Пример #1
0
    /// <summary>

    /// Transition to a new GestureRecognizer.

    /// </summary>

    /// <param name="newRecognizer">The GestureRecognizer to transition to.</param>

    public void Transition(UnityEngine.XR.WSA.Input.GestureRecognizer newRecognizer)

    {
        if (newRecognizer == null)

        {
            return;
        }



        if (ActiveRecognizer != null)

        {
            if (ActiveRecognizer == newRecognizer)

            {
                return;
            }



            ActiveRecognizer.CancelGestures();

            ActiveRecognizer.StopCapturingGestures();
        }



        newRecognizer.StartCapturingGestures();

        ActiveRecognizer = newRecognizer;
    }
Пример #2
0
    /// <summary>
    /// Transition to a new GestureRecognizer.
    /// </summary>
    /// <param name="newRecognizer">The GestureRecognizer to transition to.</param>
    public void Transition(UnityEngine.XR.WSA.Input.GestureRecognizer newRecognizer)
    {
        // GRAB EVENT works nowhere in here!!!!! ----------------------------------------------------

        // ReleasedEvent.Invoke();  // Cant use it here, just keeps blinking

        // print("TRANSITION");

        if (newRecognizer == null)
        {
            //   ReleasedEvent.Invoke(); // no effect here
            return;
        }

        if (ActiveRecognizer != null)
        {
            if (ActiveRecognizer == newRecognizer)
            {
                //   ReleasedEvent.Invoke();  // blinks here too

                return;
            }

            ActiveRecognizer.CancelGestures();
            ActiveRecognizer.StopCapturingGestures();

            //   ReleasedEvent.Invoke();  does nothing here
        }

        //   ReleasedEvent.Invoke();  // does nothing


        newRecognizer.StartCapturingGestures();
        ActiveRecognizer = newRecognizer;
    } // END TRANSITION
Пример #3
0
 /// <summary>
 /// Revert back to the default GestureRecognizer.
 /// </summary>
 public void ResetGestureRecognizers()
 {
     // Default to the manipulation gestures.
     //Transition(ManipulationRecognizer);
     ActiveRecognizer = ManipulationRecognizer;
     ActiveRecognizer.StartCapturingGestures();
 }
Пример #4
0
    public void Transition(GestureRecognizer newRecognizer)
    {
        if (newRecognizer == null)
        {
            return;
        }

        if (ActiveRecognizer != null)
        {
            if (ActiveRecognizer == newRecognizer)
            {
                return;
            }

            ActiveRecognizer.CancelGestures();
            ActiveRecognizer.StopCapturingGestures();
        }

        newRecognizer.StartCapturingGestures();
        ActiveRecognizer = newRecognizer;

        //Display or hide the manipulation visual

        if (ActiveRecognizer == ManipulationRecognizer)
        {
            visualHolder.SettingMode();
        }
        else
        {
            visualHolder.LeaveSettingMode();
        }
    }
        void LateUpdate()
        {
            GameObject oldFocusedObject = focusedObject;

            if (GazeManager.Instance.Hit &&
                OverrideFocusedObject == null &&
                GazeManager.Instance.HitInfo.collider != null)
            {
                // If gaze hits a hologram, set the focused object to that game object.
                // Also if the caller has not decided to override the focused object.
                focusedObject = GazeManager.Instance.HitInfo.collider.gameObject;
            }
            else
            {
                // If our gaze doesn't hit a hologram, set the focused object to null or override focused object.
                focusedObject = OverrideFocusedObject;
            }

            if (focusedObject != oldFocusedObject)
            {
                // If the currently focused object doesn't match the old focused object, cancel the current gesture.
                // Start looking for new gestures.  This is to prevent applying gestures from one hologram to another.
                ActiveRecognizer.CancelGestures();
                ActiveRecognizer.StartCapturingGestures();
            }
        }
Пример #6
0
        /// <summary>
        /// Transition to a new GestureRecognizer.
        /// </summary>
        /// <param name="newRecognizer">The GestureRecognizer to transition to.</param>
        public void Transition(GestureRecognizer newRecognizer)
        {
            bool isNavigationRecognizer = newRecognizer == NavigationRecognizer;

            Debug.Log("Transition isNavigationRecognizer: " + isNavigationRecognizer);
            if (newRecognizer == null)
            {
                return;
            }

            Debug.Log("BEFORE NavigationRecognizer IsCapturingGestures" + NavigationRecognizer.IsCapturingGestures());


            if (ActiveRecognizer != null)
            {
                if (ActiveRecognizer == newRecognizer)
                {
                    return;
                }

                ActiveRecognizer.CancelGestures();
                ActiveRecognizer.StopCapturingGestures();
            }

            Debug.Log("AFTER NavigationRecognizer IsCapturingGestures" + NavigationRecognizer.IsCapturingGestures());

            newRecognizer.StartCapturingGestures();
            ActiveRecognizer = newRecognizer;
        }
 /// <summary>
 /// to switch recongnizer in cast there are not only one recognizer
 /// </summary>
 /// <param name="newRecognizer"> The recognizer to be started</param>
 public void SwitchRecognizer(GestureRecognizer newRecognizer)
 {
     if (newRecognizer == null)
     {
         return;
     }
     if (ActiveRecognizer != null)
     {
         if (ActiveRecognizer == newRecognizer)
         {
             return;
         }
         ActiveRecognizer.CancelGestures();
         ActiveRecognizer.StopCapturingGestures();
     }
     newRecognizer.StartCapturingGestures();
     ActiveRecognizer = newRecognizer;
 }
Пример #8
0
 public void SwitchRecognizer(GestureRecognizer newRecognizer)
 {
     Debug.Log("To active is " + newRecognizer.ToString());
     if (newRecognizer == null)
     {
         return;
     }
     if (ActiveRecognizer != null)
     {
         if (ActiveRecognizer == newRecognizer)
         {
             return;
         }
         ActiveRecognizer.CancelGestures();
         ActiveRecognizer.StopCapturingGestures();
     }
     newRecognizer.StartCapturingGestures();
     ActiveRecognizer = newRecognizer;
 }
Пример #9
0
        void Start()
        {
            // Create a new GestureRecognizer. Sign up for tapped events.
            ClickRecognizer = new UnityEngine.VR.WSA.Input.GestureRecognizer();
            ClickRecognizer.SetRecognizableGestures(UnityEngine.VR.WSA.Input.GestureSettings.Tap);
            ClickRecognizer.TappedEvent += ClickRecognizer_TappedEvent;

            // Move Gesture
            MoveRecognizer = new UnityEngine.VR.WSA.Input.GestureRecognizer();
            MoveRecognizer.SetRecognizableGestures(UnityEngine.VR.WSA.Input.GestureSettings.ManipulationTranslate);
            MoveRecognizer.ManipulationStartedEvent   += MoveRecognizer_ManipulationStartedEvent;
            MoveRecognizer.ManipulationUpdatedEvent   += MoveRecognizer_ManipulationUpdatedEvent;
            MoveRecognizer.ManipulationCompletedEvent += MoveRecognizer_ManipulationCompletedEvent;
            MoveRecognizer.ManipulationCanceledEvent  += MoveRecognizer_ManipulationCanceledEvent;

            // Rotate Gestrue
            RotateRecognizer = new UnityEngine.VR.WSA.Input.GestureRecognizer();
            RotateRecognizer.SetRecognizableGestures(UnityEngine.VR.WSA.Input.GestureSettings.NavigationX);
            RotateRecognizer.NavigationStartedEvent   += RotateRecognizer_NavigationStartedEvent;
            RotateRecognizer.NavigationUpdatedEvent   += RotateRecognizer_NavigationUpdatedEvent;
            RotateRecognizer.NavigationCompletedEvent += RotateRecognizer_NavigationCompletedEvent;
            RotateRecognizer.NavigationCanceledEvent  += RotateRecognizer_NavigationCanceledEvent;

            // Zoom Gesture
            ZoomRecognizer = new UnityEngine.VR.WSA.Input.GestureRecognizer();
            ZoomRecognizer.SetRecognizableGestures(UnityEngine.VR.WSA.Input.GestureSettings.NavigationY);
            ZoomRecognizer.NavigationStartedEvent   += ZoomRecognizer_NavigationStartedEvent;
            ZoomRecognizer.NavigationUpdatedEvent   += ZoomRecognizer_NavigationUpdatedEvent;
            ZoomRecognizer.NavigationCompletedEvent += ZoomRecognizer_NavigationCompletedEvent;
            ZoomRecognizer.NavigationCanceledEvent  += ZoomRecognizer_NavigationCanceledEvent;

            // Save Gesture
            SaveRecognizer = new UnityEngine.VR.WSA.Input.GestureRecognizer();
            SaveRecognizer.SetRecognizableGestures(UnityEngine.VR.WSA.Input.GestureSettings.Tap);
            SaveRecognizer.TappedEvent += SaveRecognizer_TappedEvent;

            // Start looking for gestures.
            IsClicking       = true;
            ActiveRecognizer = ClickRecognizer;
            ActiveRecognizer.StartCapturingGestures();
        }
        void OnDestroy()
        {
            ActiveRecognizer.TappedEvent -= TappedCallback;

            ActiveRecognizer.NavigationStartedEvent   -= NavigationStartedCallback;
            ActiveRecognizer.NavigationUpdatedEvent   -= NavigationUpdatedCallback;
            ActiveRecognizer.NavigationCompletedEvent -= NavigationCompletedCallback;
            ActiveRecognizer.NavigationCanceledEvent  -= NavigationCanceledCallback;

            ActiveRecognizer.HoldStartedEvent   -= HoldStartedCallback;
            ActiveRecognizer.HoldCompletedEvent -= HoldCompletedCallback;
            ActiveRecognizer.HoldCanceledEvent  -= HoldCanceledCallback;

            ActiveRecognizer.ManipulationStartedEvent   -= ManipulationStartedCallback;
            ActiveRecognizer.ManipulationUpdatedEvent   -= ManipulationUpdatedCallback;
            ActiveRecognizer.ManipulationCompletedEvent -= ManipulationCompletedCallback;
            ActiveRecognizer.ManipulationCanceledEvent  -= ManipulationCanceledCallback;

            ActiveRecognizer.CancelGestures();

            SetupEvents(false);
        }
Пример #11
0
    /// <summary>
    /// Transition to a new GestureRecognizer.
    /// </summary>
    /// <param name="newRecognizer">The GestureRecognizer to transition to.</param>
    ///

    public void FreeRotation(GestureRecognizer newRecognizer)
    {
        if (newRecognizer == null)
        {
            return;
        }

        if (ActiveRecognizer != null)
        {
            if (ActiveRecognizer == newRecognizer)
            {
                return;
            }

            ActiveRecognizer.CancelGestures();
            ActiveRecognizer.StopCapturingGestures();
        }

        newRecognizer.StartCapturingGestures();
        ActiveRecognizer = newRecognizer;
        IsRotating       = 4;
    }
        public void Transition(GestureRecognizer newRecognizer)
        {
            Debug.Log("newrecognizer : " + newRecognizer + "recognizable : " + newRecognizer.GetRecognizableGestures());

            if (newRecognizer == null)
            {
                return;
            }

            if (ActiveRecognizer != null)
            {
                if (ActiveRecognizer == newRecognizer)
                {
                    return;
                }

                ActiveRecognizer.CancelGestures();
                ActiveRecognizer.StopCapturingGestures();
            }

            newRecognizer.StartCapturingGestures();
            ActiveRecognizer = newRecognizer;
        }
Пример #13
0
        // Transfer from one gesture module to another one.
        public void Transition(UnityEngine.VR.WSA.Input.GestureRecognizer newRecognizer)
        {
            if (newRecognizer == null)
            {
                return;
            }

            if (ActiveRecognizer != null)
            {
                if (ActiveRecognizer == newRecognizer)
                {
                    return;
                }
                ActiveRecognizer.CancelGestures();
                ActiveRecognizer.StopCapturingGestures();
            }
            newRecognizer.StartCapturingGestures();
            ActiveRecognizer = newRecognizer;

            if (ActiveRecognizer == ClickRecognizer)
            {
                IsClicking = true;
            }
            else
            {
                IsClicking = false;
            }

            if (ActiveRecognizer == SaveRecognizer)
            {
                DebugInfoManager.Instance.UpdateSavePointsStatus(true);
            }
            else
            {
                DebugInfoManager.Instance.UpdateSavePointsStatus(false);
            }
        }