Example #1
0
        static void Main(string[] args)
        {
            Console.WriteLine("Connecting to device...");

            var context = new XnMOpenNIContext();

            context.Init();

            var session = new XnMSessionManager(context, "Wave", "RaiseHand");

            session.SessionStarted += new EventHandler <PointEventArgs>(session_SessionStarted);
            session.SessionEnded   += new EventHandler(session_SessionEnded);

            var pointFilter = new XnMPointFilter();

            pointFilter.PointCreate  += new EventHandler <PointBasedEventArgs>(pointControl_PointCreate);
            pointFilter.PointDestroy += new EventHandler <PointDestroyEventArgs>(pointControl_PointDestroy);
            pointFilter.PointUpdate  += new EventHandler <PointBasedEventArgs>(pointControl_PointUpdate);

            session.AddListener(pointFilter);

            Console.WriteLine("Wave to start.");

            while (!Console.KeyAvailable)
            {
                context.Update();
                session.Update(context);
            }
        }
        void SetUpKinect()
        {
            this.context = new XnMOpenNIContext();
            this.context.Init();

            this.session = new XnMSessionManager(context, "Wave", "RaiseHand");

            this.session.SessionStarted += new EventHandler <PointEventArgs>(session_SessionStarted);
            this.session.SessionEnded   += new EventHandler(session_SessionEnded);

            var point = new XnMPointFilter();

            point.PointUpdate += new EventHandler <PointBasedEventArgs>(point_PointUpdate);
            this.session.AddListener(point);

            var push = new XnMPushDetector();

            push.Push += new EventHandler <PushDetectorEventArgs>(push_Push);

            this.session.AddListener(push);

            var start  = new ThreadStart(RunKinect);
            var thread = new Thread(start);

            thread.Start();
        }
Example #3
0
        public static void Run()
        {
            Initializing = true;

            points = new Point3D[SmoothingFactor];

            XnMOpenNIContext context = new XnMOpenNIContext();

            try
            {
                context.Init();
                KinectExists = true;
            }
            catch (XnMException)
            {
                Initializing = false;
                Active       = false;
                KinectExists = false;
                return;
            }

            // Kinect session
            sessionManager = new XnMSessionManager(context, "Wave", "RaiseHand");
            sessionManager.SessionStarted += new EventHandler <PointEventArgs>(sessionManager_SessionStarted);
            sessionManager.SessionEnded   += new EventHandler(sessionManager_SessionEnded);

            // hand tracking filter
            XnMPointFilter filter = new XnMPointFilter();

            filter.PointCreate += new EventHandler <PointBasedEventArgs>(control_PointCreate);
            filter.PointUpdate += new EventHandler <PointBasedEventArgs>(control_PointUpdate);
            sessionManager.AddListener(filter);

            Initializing = false;

            // infinite loop until app shutdown
            while (!ShutDown)
            {
                context.Update();
                sessionManager.Update(context);
            }
        }
Example #4
0
        static void Main(string[] args)
        {
            Console.WriteLine("Connecting to device...");

            var context = new XnMOpenNIContext();

            context.Init();
            var session = new XnMSessionManager(context, "Wave", "RaiseHand");

            var pointControl = new XnMPointFilter();

            pointControl.PointUpdate  += new EventHandler <PointBasedEventArgs>(pointControl_PointUpdate);
            pointControl.PointDestroy += new EventHandler <PointDestroyEventArgs>(pointControl_PointDestroy);
            pointControl.PointCreate  += new EventHandler <PointBasedEventArgs>(pointControl_PointCreate);
            session.AddListener(pointControl);

            Console.WriteLine("Wave to start.");

            while (!Console.KeyAvailable)
            {
                context.Update();
                session.Update(context);

                Console.Clear();
                if (points.Keys.Count > 0)
                {
                    foreach (var key in points.Keys)
                    {
                        var point = points[key];
                        Console.WriteLine("{0}: {1}, {2}, {3}",
                                          key.ToString(), point.X.ToString(), point.Y.ToString(), point.Z.ToString());
                    }
                }
                else
                {
                    Console.WriteLine("No points.");
                    Console.WriteLine("Please wave to start.");
                }
            }
        }
Example #5
0
        static void Main(string[] args)
        {
            Console.WriteLine("Connecting to device...");

            var context = new XnMOpenNIContext();
            context.Init();
            var session = new XnMSessionManager(context, "Wave", "RaiseHand");

            var pointControl = new XnMPointFilter();
            pointControl.PointUpdate += new EventHandler<PointBasedEventArgs>(pointControl_PointUpdate);
            pointControl.PointDestroy += new EventHandler<PointDestroyEventArgs>(pointControl_PointDestroy);
            pointControl.PointCreate += new EventHandler<PointBasedEventArgs>(pointControl_PointCreate);
            session.AddListener(pointControl);

            Console.WriteLine("Wave to start.");

            while (!Console.KeyAvailable)
            {
                context.Update();
                session.Update(context);

                Console.Clear();
                if (points.Keys.Count > 0)
                {
                    foreach (var key in points.Keys)
                    {
                        var point = points[key];
                        Console.WriteLine("{0}: {1}, {2}, {3}",
                            key.ToString(), point.X.ToString(), point.Y.ToString(), point.Z.ToString());
                    }
                }
                else
                {
                    Console.WriteLine("No points.");
                    Console.WriteLine("Please wave to start.");
                }

            }
        }
        void SetUpKinect()
        {
            this.context = new XnMOpenNIContext();
            this.context.Init();

            this.session = new XnMSessionManager(context, "Wave", "RaiseHand");

            this.session.SessionStarted += new EventHandler<PointEventArgs>(session_SessionStarted);
            this.session.SessionEnded += new EventHandler(session_SessionEnded);

            var point = new XnMPointFilter();
            point.PointUpdate += new EventHandler<PointBasedEventArgs>(point_PointUpdate);
            this.session.AddListener(point);

            var push = new XnMPushDetector();
            push.Push += new EventHandler<PushDetectorEventArgs>(push_Push);

            this.session.AddListener(push);

            var start = new ThreadStart(RunKinect);
            var thread = new Thread(start);
            thread.Start();
        }