示例#1
0
 public override void OnGesture(ref PXCMGesture.Gesture data)
 {
     if (data.active)
     {
         // MessageBox.Show("OnGesture(" + data.label + ")");
     }
 }
示例#2
0
 public override void OnGesture(ref PXCMGesture.Gesture data)
 {
     if (data.active)
     {
         geoNodeParams.gestureLabel = data.label;
     }
 }
示例#3
0
 public override void OnGesture(ref PXCMGesture.Gesture data)
 {
     if (data.active)
     {
         Console.WriteLine("OnGesture(" + data.label + ")");
         gesture = data.label;
     }
 }
示例#4
0
        void _tracker_OnGesture(PXCMGesture.Gesture gestureData)
        {
            //AddLog("[Gesture: " + gestureData.label + "]");

            //ignore consecutive gestures
            if (_lastGestureAt != default(DateTime))
            {
                TimeSpan span = DateTime.Now.Subtract(_lastGestureAt);
                if (Math.Abs(span.TotalSeconds) < 3.0)
                {
                    return;
                }
            }

            switch (gestureData.label)
            {
            case PXCMGesture.Gesture.Label.LABEL_HAND_WAVE:
            {
                _lastGestureAt = DateTime.Now;

                if (_boardControl != null)
                {
                    BackImage_MouseDown(null, null);
                }
                else
                {
                    CloseImage_MouseDown(null, null);
                }
            }
            break;

            case PXCMGesture.Gesture.Label.LABEL_POSE_THUMB_UP:
            {
                _lastGestureAt = DateTime.Now;

                //if (_boardControl == null)
                {
                    AboutImage_MouseDown(null, null);
                    return;
                }

                if (Constants.ControlGesture == BallControlGesture.ThumbUp)
                {
                    ActivateCurrentPebble();
                }
            }
            break;

            case PXCMGesture.Gesture.Label.LABEL_POSE_THUMB_DOWN:
            {
                this.Dispatcher.Invoke(new Action(() =>
                    {
                        _boardControl.DoUndo();
                    }));
            }
            break;
            }
        }
示例#5
0
 public bool QueryGesture(PXCMGesture.GeoNode.Label body, out PXCMGesture.Gesture data)
 {
     if (initialized)
     {
         return(QueryGestureC(instance, body, out data));
     }
     data = new PXCMGesture.Gesture();
     return(false);
 }
 public override void OnGesture(ref PXCMGesture.Gesture data)
 {
     if (data.label == PXCMGesture.Gesture.Label.LABEL_POSE_THUMB_DOWN)
     {
         if (Game.gd.Gamestate == 0)
         {
             Game.gd.Gamestate = 1;
         }
     }
     if (data.active)
     {
         Console.WriteLine("OnGesture(" + data.label + ")");
     }
 }
 public bool QueryGesture(PXCMGesture.GeoNode.Label body, out PXCMGesture.Gesture data)
 {
     if (instance!=IntPtr.Zero) return QueryGestureC(instance,body,out data);
     data=new PXCMGesture.Gesture();
     return false;
 }
示例#8
0
 void OnGesureHandler(ref PXCMGesture.Gesture gestureData)
 {
     this.OnGesture(gestureData);
 }
示例#9
0
 public override void OnGesture(ref PXCMGesture.Gesture gesture)
 {
     _camera.OnGesture(gesture);
 }
示例#10
0
 private static extern bool QueryGestureC(IntPtr pp, PXCMGesture.GeoNode.Label body, out PXCMGesture.Gesture data);
 public bool QueryGesture(PXCMGesture.GeoNode.Label body, out PXCMGesture.Gesture data)
 {
     if (initialized) return QueryGestureC(instance,body,out data);
     data=new PXCMGesture.Gesture();
     return false;
 }
示例#12
0
        public override void OnGesture(ref PXCMGesture.Gesture gesture)
        {
            base.OnGesture(ref gesture);
            Debug.WriteLine(gesture.body + " Gesture: {0} Visible: {1} Confidence: {2}", gesture.label, gesture.active, gesture.confidence);
            switch (gesture.label)
            {
            case PXCMGesture.Gesture.Label.LABEL_POSE_BIG5:
                IfThisElseThat(gesture.active, _poses.OnBigFiveBegin, _poses.OnBigFiveEnd);
                break;

            case PXCMGesture.Gesture.Label.LABEL_POSE_PEACE:
                IfThisElseThat(gesture.active, _poses.OnPosePeaceBegin, _poses.OnPosePeaceEnd);
                break;

            case PXCMGesture.Gesture.Label.LABEL_POSE_THUMB_DOWN:
                IfThisElseThat(gesture.active, _poses.OnPoseThumbsDownBegin, _poses.OnPoseThumbsDownEnd);
                break;

            case PXCMGesture.Gesture.Label.LABEL_POSE_THUMB_UP:
                IfThisElseThat(gesture.active, _poses.OnPoseThumbsUpBegin, _poses.OnPoseThumbsUpEnd);
                break;

            case PXCMGesture.Gesture.Label.LABEL_HAND_CIRCLE:
                _gestures.OnGestureHandCircle();
                break;

            case PXCMGesture.Gesture.Label.LABEL_HAND_WAVE:
                _gestures.OnGestureHandWave();
                break;

            case PXCMGesture.Gesture.Label.LABEL_NAV_SWIPE_DOWN:
                _gestures.OnGestureSwipeDown();
                break;

            case PXCMGesture.Gesture.Label.LABEL_NAV_SWIPE_UP:
                _gestures.OnGestureSwipeUp();
                break;

            case PXCMGesture.Gesture.Label.LABEL_NAV_SWIPE_RIGHT:
                _gestures.OnGestureSwipeRight();
                break;

            case PXCMGesture.Gesture.Label.LABEL_NAV_SWIPE_LEFT:
                _gestures.OnGestureSwipeLeft();
                break;

            case PXCMGesture.Gesture.Label.LABEL_SET_CUSTOMIZED:
                break;

            case PXCMGesture.Gesture.Label.LABEL_SET_POSE:
                break;

            case PXCMGesture.Gesture.Label.LABEL_SET_NAVIGATION:
                break;

            case PXCMGesture.Gesture.Label.LABEL_SET_HAND:
                break;

            case PXCMGesture.Gesture.Label.LABEL_MASK_DETAILS:
                break;

            case PXCMGesture.Gesture.Label.LABEL_MASK_SET:
                break;

            case PXCMGesture.Gesture.Label.LABEL_ANY:
                break;

            default:
                throw new ArgumentOutOfRangeException();
            }
        }
示例#13
0
        public void OnGesture(PXCMGesture.Gesture gesture)
        {
            Hand hand;

            if (gesture.body == PXCMGesture.GeoNode.Label.LABEL_BODY_HAND_LEFT)
            {
                hand = LeftHand;
            }
            else
            {
                hand = RightHand;
            }
            Debug.WriteLine(gesture.body + " Gesture: {0} Visible: {1} Confidence: {2}", gesture.label, gesture.active,
                            gesture.confidence);
            switch (gesture.label)
            {
            case PXCMGesture.Gesture.Label.LABEL_POSE_BIG5:
                //IfThisElseThat(gesture.active, Poses.OnBigFiveBegin, Poses.OnBigFiveEnd);
                break;

            case PXCMGesture.Gesture.Label.LABEL_POSE_PEACE:
                IfThisElseThat(gesture.active, () => _poses.OnPosePeaceBegin(hand), () => _poses.OnPosePeaceEnd(hand));
                break;

            case PXCMGesture.Gesture.Label.LABEL_POSE_THUMB_DOWN:
                break;

            case PXCMGesture.Gesture.Label.LABEL_POSE_THUMB_UP:
                break;

            case PXCMGesture.Gesture.Label.LABEL_HAND_CIRCLE:
                break;

            case PXCMGesture.Gesture.Label.LABEL_HAND_WAVE:
                break;

            case PXCMGesture.Gesture.Label.LABEL_NAV_SWIPE_DOWN:
                _gestures.OnSlideDown(new GestureEventArgs(hand.Side + "_Down"));
                break;

            case PXCMGesture.Gesture.Label.LABEL_NAV_SWIPE_UP:
                _gestures.OnSlideUp(new GestureEventArgs(hand.Side + "_Up"));
                break;

            case PXCMGesture.Gesture.Label.LABEL_NAV_SWIPE_RIGHT:
                _gestures.OnSlideRight(new GestureEventArgs(hand.Side + "_Right"));
                break;

            case PXCMGesture.Gesture.Label.LABEL_NAV_SWIPE_LEFT:
                _gestures.OnSlideLeft(new GestureEventArgs(hand.Side + "_Left"));
                break;

            case PXCMGesture.Gesture.Label.LABEL_SET_CUSTOMIZED:
                break;

            case PXCMGesture.Gesture.Label.LABEL_SET_POSE:
                break;

            case PXCMGesture.Gesture.Label.LABEL_SET_NAVIGATION:
                break;

            case PXCMGesture.Gesture.Label.LABEL_SET_HAND:
                break;

            case PXCMGesture.Gesture.Label.LABEL_MASK_DETAILS:
                break;

            case PXCMGesture.Gesture.Label.LABEL_MASK_SET:
                break;

            case PXCMGesture.Gesture.Label.LABEL_ANY:
                break;

            default:
                throw new ArgumentOutOfRangeException();
            }
        }