Example #1
0
        private void _HandleDepthFrameReady(object sender, Microsoft.Kinect.DepthImageFrameReadyEventArgs args)
        {
            short[] frame;

            using (Microsoft.Kinect.DepthImageFrame kinect_frame = args.OpenDepthImageFrame())
            {
                if (kinect_frame == null)
                {
                    return;
                }

                frame = new short[kinect_frame.PixelDataLength];
                kinect_frame.CopyPixelDataTo(frame);

                // Discard irrelevant data
                for (int i = 0; i < frame.Length; ++i)
                {
                    frame[i] = (short)(frame[i] >> Microsoft.Kinect.DepthImageFrame.PlayerIndexBitmaskWidth);
                }

                // Convert to Rhapsody frame
                DepthFrame rhapsody_frame = new DepthFrame
                {
                    Format = DepthImageFormat.Resolution640x480_30fps,
                    Data   = frame
                };

                // Call all listeners
                foreach (Delegate d in this.DepthFrameReady.GetInvocationList())
                {
                    d.DynamicInvoke(new object[] { sender, new DepthFrameReadyEventArgs {
                                                       Frame = rhapsody_frame
                                                   } });
                }
            }
        }
 /// <summary>
 /// default constructor
 /// </summary>
 /// <param name="depthFrame">teh depthframe captured</param>
 public DepthEventArgs(Microsoft.Kinect.DepthImageFrame depthFrame)
 {
     this.depthFrame = depthFrame;
 }
Example #3
0
 /// <summary>
 /// default constructor
 /// </summary>
 /// <param name="depthFrame">teh depthframe captured</param>
 public DepthEventArgs(Microsoft.Kinect.DepthImageFrame depthFrame)
 {
     this.depthFrame = depthFrame;
 }