CURELab.SignLanguage.RecognitionSystem.DataWarehouse.SetSkeletonFrameData C# (CSharp) Метод

SetSkeletonFrameData() публичный Метод

set frame data to data warehouse and return whether the data is valid
public SetSkeletonFrameData ( Microsoft.Kinect.SkeletonFrame sf ) : bool
sf Microsoft.Kinect.SkeletonFrame
Результат bool
        public bool SetSkeletonFrameData(SkeletonFrame sf)
        {
            Skeleton[] skeletons = new Skeleton[sf.SkeletonArrayLength];
            sf.CopySkeletonDataTo(skeletons);
            foreach (Skeleton sk in skeletons)
            {
                if (sk.TrackingState == SkeletonTrackingState.Tracked)
                {
                    m_frameData.Add(new FrameData(++m_currentFrame));//first frame is frame 1
                    m_frameData[m_currentFrame].m_Player1.m_position = UtilityTools.SkeletonPointToVector3(sk.Position);
                    m_frameData[m_currentFrame].m_Player1.m_skeleton = sk;
                    //Console.WriteLine(sk.Position.X);
                    return true;
                }

            }
            return false;
        }

Usage Example

Пример #1
0
 public void SensorSkeletonFrameReady(object sender, SkeletonFrameReadyEventArgs e)
 {
     using (SkeletonFrame skeletonFrame = e.OpenSkeletonFrame())
     {
         if (skeletonFrame != null)
         {
             if (m_dataWarehouse.SetSkeletonFrameData(skeletonFrame))
             {
                 //notify modules with updated data.
                 NotifyAll(new DataTransferEventArgs(m_dataWarehouse.m_currentFrame));
             }
         }
     }
 }