private void OnManipulationUpdated(KinectManipulationUpdatedEventArgs args)
        {
            var dragableElement = this.Element;

            if (!(dragableElement.Parent is Canvas))
            {
                return;
            }

            var delta            = args.Delta.Translation;
            var translationPoint = new Point(delta.X, delta.Y);
            var translatedPoint  = InputPointerManager.TransformInputPointerCoordinatesToWindowCoordinates(translationPoint, this.kinectRegion.Bounds);

            var offsetY = Canvas.GetTop(dragableElement);
            var offsetX = Canvas.GetLeft(dragableElement);

            if (double.IsNaN(offsetY))
            {
                offsetY = 0;
            }
            if (double.IsNaN(offsetX))
            {
                offsetX = 0;
            }

            Canvas.SetTop(dragableElement, offsetY + translatedPoint.Y);
            Canvas.SetLeft(dragableElement, offsetX + translatedPoint.X);
        }
        internal HandInScreenEngagementModel(int engagedPeopleAllowed, InputPointerManager inputPointerManager)
        {
            this.EngagedPeopleAllowed = engagedPeopleAllowed;
            this.inputPointerManager = inputPointerManager;

            var kinectCoreWindow = KinectCoreWindow.GetForCurrentThread();
            kinectCoreWindow.PointerMoved += this.kinectCoreWindow_PointerMoved;
            this.handsToEngage = new List<BodyHandPair>();
            this.pointerPoints = new List<KinectPointerPoint>();
        }
Exemple #3
0
        internal HandInScreenEngagementModel(int engagedPeopleAllowed, InputPointerManager inputPointerManager)
        {
            this.EngagedPeopleAllowed = engagedPeopleAllowed;
            this.inputPointerManager  = inputPointerManager;

            var kinectCoreWindow = KinectCoreWindow.GetForCurrentThread();

            kinectCoreWindow.PointerMoved += this.kinectCoreWindow_PointerMoved;
            this.handsToEngage             = new List <BodyHandPair>();
            this.pointerPoints             = new List <KinectPointerPoint>();
        }