Пример #1
0
        static void Main()
        {
            _source.TraceEvent(TraceEventType.Start, 0, "MSEKinectBootstrapper");

            MSEKinectManager km = new MSEKinectManager();
            km.Start();

            Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault(false);
            Application.Run(new Form1());
        }
Пример #2
0
        private void Window_Loaded(object sender, RoutedEventArgs e)
        {
            this.Dispatcher.Invoke(new Action(delegate()
            {

            DrawingResources.GenerateGridLines(canvas, GridLines, GridLinesScaleSlider.Value);
            GridLines.ShowGridLines = true;

            // When we do the event handling through XAML, an event fires before the Window is loaded, and it freezes the program, so we do event binding after Window is loaded
            GridLinesScaleSlider.ValueChanged += UpdateGridlines;
            GridLinesCheckBox.Checked += ChangeGridlineVisibility;
            GridLinesCheckBox.Unchecked += ChangeGridlineVisibility;
            RangeCheckBox.Checked += ChangeRangeVisibility;
            RangeCheckBox.Unchecked += ChangeRangeVisibility;

            //Create Dictionaries for DeviceControl, PersonControl
            DeviceControlDictionary = new Dictionary<string, DeviceControl>();
            PersonControlDictionary = new Dictionary<PairablePerson, PersonControl>();
            TrackerControlDictionary = new Dictionary<string, TrackerControl>();

            //Initialize and Start MSEKinectManager
            kinectManager = new MSEKinectManager();
            kinectManager.Start();

            // The tracker is created in the PersonManager constructor, so there's actually no way for us to listen for its creation the first time
            //trackerChanged(kinectManager.PersonManager, kinectManager.PersonManager.Tracker);

            //Setup Events for Device Addition and Removal, Person Addition and Removal
            kinectManager.DeviceManager.DeviceAdded += deviceAdded;
            kinectManager.DeviceManager.DeviceRemoved += deviceRemoved;
            kinectManager.PersonManager.PersonAdded += personAdded;
            kinectManager.PersonManager.PersonRemoved += personRemoved;
            kinectManager.PersonManager.newKinectDiscovered += KinectDiscovered;
            kinectManager.PersonManager.kinectRemoved += KinectRemoved;

            //Seperate components for displaying the visible skeletons
            skeletonRenderer = new SkeletonRenderer(SkeletonBasicsImage);

            //// Values retrieved from:
            //// http://blogs.msdn.com/b/kinectforwindows/archive/2012/01/20/near-mode-what-it-is-and-isn-t.aspx
            //// http://msdn.microsoft.com/en-us/library/jj131033.aspx
            //tracker.MinRange = 0.8;
            //tracker.MaxRange = 4;
            //tracker.FieldOfView = 57;

            }));
        }