//method for detecting a body in kinect frame void _bodyFrameReader_FrameArrived(object sender, Windows.Kinect.BodyFrameArrivedEventArgs args) { var frame = args.FrameReference; using (var multiSourceFrame = frame.AcquireFrame()) { multiSourceFrame.GetAndRefreshBodyData(_bodies); //обновляем данные о найденных людях _currentBody = null; foreach (var body in _bodies) { if (body != null && body.IsTracked) { _currentBody = body; // для простоты берем первого найденного человека break; } } if (_currentBody != null) { _gestureFrameSource.TrackingId = _currentBody.TrackingId; _gestureFrameReader.IsPaused = false; } else { _gestureFrameSource.TrackingId = 0; _gestureFrameReader.IsPaused = true; } } }
void BodyFrameReader_FrameArrived(object sender, Kinect2.BodyFrameArrivedEventArgs e) { var reference = e.FrameReference.AcquireFrame(); using (var frame = reference) { if (frame != null) { // Bodyを入れる配列を作る _Bodies = new Kinect2.Body[frame.BodyFrameSource.BodyCount]; // ボディデータを取得 frame.GetAndRefreshBodyData(_Bodies); foreach (Kinect2.Body body in _Bodies) { if (body.IsTracked) { _Body = body; } } frame.Dispose(); } } }
// Token: 0x06002AD0 RID: 10960 RVA: 0x000D89A0 File Offset: 0x000D6DA0 internal BodyFrameArrivedEventArgs(IntPtr pNative) { this._pNative = pNative; BodyFrameArrivedEventArgs.Windows_Kinect_BodyFrameArrivedEventArgs_AddRefObject(ref this._pNative); }