private void Page_Loaded(object sender, RoutedEventArgs e)
        {
            InitializeNavHead();

            mainWindowClient = this.Parent as MainWindow;

            if (mainWindowClient.KinectManagerClient.OpenKinect())
            {
                routeSetViewModel.LoadData();

                rocksOnWallViewModel = new RocksOnWallViewModel(canvasWall, mainWindowClient.KinectManagerClient.ManagerCoorMapper);
                bool isAnyRocksOnWall = rocksOnWallViewModel.
                                        LoadAndDrawRocksOnWall(AppGlobal.WallID);
                rocksOnRouteViewModel = new RocksOnRouteViewModel(canvasWall);

                // InitializeSaveRouteCommands() has to be called after initializing rocksOnWallViewModel
                InitializeSaveRouteCommands();
                SetUpBtnCommandsInRockStatusUserControls();

                if (!isAnyRocksOnWall)
                {
                    UiHelper.NotifyUser("No rocks registered with the wall!");
                }

                if (debug)
                {
                    mainWindowClient.SubscribeColorImgSrcToPlaygrd();
                }
                AppGlobal.DebugModeChanged += HandleDebugModeChanged;
            }
        }
        public void Page_Loaded(object sender, RoutedEventArgs e)
        {
            InitializeNavHead();

            mainWindowClient = this.Parent as MainWindow;

            kinectManagerClient = mainWindowClient.KinectManagerClient;
            if (kinectManagerClient.kinectSensor != null)
            {
                kinectManagerClient.multiSourceReader.MultiSourceFrameArrived += Reader_MultiSourceFrameArrived;

                colorWidth  = KinectExtensions.FrameDimensions[SpaceMode.Color].Item1;
                colorHeight = KinectExtensions.FrameDimensions[SpaceMode.Color].Item2;
                depthWidth  = KinectExtensions.FrameDimensions[SpaceMode.Depth].Item1;
                depthHeight = KinectExtensions.FrameDimensions[SpaceMode.Depth].Item2;

                colorMappedToDepthSpace = new DepthSpacePoint[(int)(colorWidth * colorHeight)];
                lastNotNullDepthData    = new ushort[(int)depthWidth * (int)depthHeight];
                lastNotNullColorData    = new byte[(int)colorWidth * (int)colorHeight * PixelFormats.Bgr32.BitsPerPixel / 8];
            }
            else
            {
                UiHelper.NotifyUser("Kinect not available!");
            }

            //kinectSensor.Open();
            //jcWall = new KinectWall(canvas, kinectSensor.CoordinateMapper);
            //rocksOnWallViewModel = new RocksOnWallViewModel(canvas, kinectSensor.CoordinateMapper);

            jcWall = new KinectWall(canvas, kinectManagerClient.kinectSensor.CoordinateMapper);
            rocksOnWallViewModel = new RocksOnWallViewModel(canvas, kinectManagerClient.kinectSensor.CoordinateMapper);

            InitializeCommands();
        }
        public void Page_Loaded(object sender, RoutedEventArgs e)
        {
            kinectSensor.Open();
            jcWall = new KinectWall(canvas, kinectSensor.CoordinateMapper);
            rocksOnWallViewModel = new RocksOnWallViewModel(canvas);

            InitialiseCommands();
        }
Beispiel #4
0
        private void Page_Loaded(object sender, RoutedEventArgs e)
        {
            routeSetViewModel.LoadData();

            rocksOnWallViewModel = new RocksOnWallViewModel(canvasWall, kinectSensor.CoordinateMapper);
            bool isAnyRocksOnWall = rocksOnWallViewModel.
                                    LoadAndDrawRocksOnWall(AppGlobal.WallID);

            rocksOnRouteViewModel = new RocksOnRouteViewModel(canvasWall);

            SetUpBtnCommandsInRockStatusUserControls();

            if (!isAnyRocksOnWall)
            {
                UiHelper.NotifyUser("No rocks registered with the wall!");
            }
        }
        public void Page_Loaded(object sender, RoutedEventArgs e)
        {
            kinectManagerClient = (this.Parent as MainWindow).KinectManagerClient;
            if (kinectManagerClient.kinectSensor != null)
            {
                kinectManagerClient.multiSourceReader.MultiSourceFrameArrived += Reader_MultiSourceFrameArrived;
                //mulSourceReader.MultiSourceFrameArrived += Reader_MultiSourceFrameArrived;

                colorWidth  = KinectExtensions.FrameDimensions[SpaceMode.Color].Item1;
                colorHeight = KinectExtensions.FrameDimensions[SpaceMode.Color].Item2;
                depthWidth  = KinectExtensions.FrameDimensions[SpaceMode.Depth].Item1;
                depthHeight = KinectExtensions.FrameDimensions[SpaceMode.Depth].Item2;

                colorMappedToDepthSpace = new DepthSpacePoint[(int)(colorWidth * colorHeight)];
                lastNotNullDepthData    = new ushort[(int)depthWidth * (int)depthHeight];
                lastNotNullColorData    = new byte[(int)colorWidth * (int)colorHeight * PixelFormats.Bgr32.BitsPerPixel / 8];

                bitmap = new WriteableBitmap((int)depthWidth, (int)depthHeight, 96.0, 96.0, PixelFormats.Bgra32, null);

                // Calculate the WriteableBitmap back buffer size
                bitmapBackBufferSize = (uint)((bitmap.BackBufferStride * (bitmap.PixelHeight - 1)) + (bitmap.PixelWidth * bytesPerPixel));
            }
            else
            {
                Console.WriteLine("Kinect not available!");
            }

            //kinectSensor.Open();
            //jcWall = new KinectWall(canvas, kinectSensor.CoordinateMapper);
            //rocksOnWallViewModel = new RocksOnWallViewModel(canvas, kinectSensor.CoordinateMapper);


            jcWall = new KinectWall(canvas, kinectManagerClient.kinectSensor.CoordinateMapper);
            rocksOnWallViewModel = new RocksOnWallViewModel(canvas, kinectManagerClient.kinectSensor.CoordinateMapper);

            InitialiseCommands();
        }