示例#1
0
        /// <summary>
        /// 深度カメラのデータ更新イベントハンドラ
        /// </summary>
        /// <param name="sender">イベント送信元</param>
        /// <param name="e">イベント引数</param>
        void kinectManager_DepthUpdate(object sender, DepthUpdateEventArgs e)
        {
            _depthSource = null;

            if (!_cameraOptions.DepthDrawEnable)
            {
                return;
            }

            DepthImageFrame depthFrame = e.DepthFrame;

            _depthSource = BitmapSource.Create(
                depthFrame.Width, depthFrame.Height,
                96, 96,
                PixelFormats.Bgr32,
                null,
                _ConvertDepthColor(e.Kinect, depthFrame),
                depthFrame.Width * Bgr32BytesPerPixel
            );
        }
示例#2
0
        /// <summary>
        /// 深度カメラフレーム更新イベントハンドラ
        /// </summary>
        /// <param name="sender">イベント送信元</param>
        /// <param name="e">イベント引数</param>
        private void _kinect_DepthFrameReady(object sender, DepthImageFrameReadyEventArgs e)
        {
            if (!_drawEnable)
            {
                return;
            }

            KinectSensor kinect = sender as KinectSensor;
            if (kinect == null)
            {
                return;
            }

            // 距離カメラのフレームデータを取得する
            using (DepthImageFrame depthFrame = e.OpenDepthImageFrame())
            {
                if (depthFrame == null)
                {
                    return;
                }

                EventHandler<DepthUpdateEventArgs> eventHandler = DepthUpdate;
                if (eventHandler != null)
                {
                    DepthUpdateEventArgs args = new DepthUpdateEventArgs();
                    args.Kinect     = kinect;
                    args.DepthFrame = depthFrame;
                    eventHandler(this, args);
                }
            }
        }
示例#3
0
 /// <summary>
 /// 深度カメラのデータ更新イベントハンドラ
 /// </summary>
 /// <param name="sender">イベント送信元</param>
 /// <param name="e">イベント引数</param>
 private void _kinectManager_DepthUpdate(object sender, DepthUpdateEventArgs e)
 {
     RaisePropertyChanged("DepthSource");
 }