示例#1
0
        public void Log(JointPositions positions, uint userId, IList <IGesture> gestures)
        {
            positions.InitIfNotSetExt(Fnc.Values <Joints>());

            var timestamp     = DateTime.Now.ToString("O");
            var player        = userId.ToString(CultureInfo.InvariantCulture);
            var positionsDump = string.Join(",", Fnc.Values <Joints>().Select(joint => positions[joint].x + "," + positions[joint].y + "," + positions[joint].z).ToArray());
            var baseDataLine  = timestamp + "," + player + "," + positionsDump + ",";

            if (gestures == null || gestures.Count < 1)
            {
                gestures = new IGesture[] { null }
            }
            ;

            foreach (var dataLine in gestures.Select(gestureDetected => baseDataLine + (gestureDetected != null ? gestureDetected.Gesture.ToString() : "None")))
            {
                _dataStream.WriteLine(dataLine);
            }
        }