public KinectSkeleton TransformSkeleton(KinectSkeleton skeleton)
{
KinectSkeleton transformedSkeleton = new KinectSkeleton();
transformedSkeleton.leftHandClosed = skeleton.leftHandClosed;
transformedSkeleton.rightHandClosed = skeleton.rightHandClosed;
transformedSkeleton.TrackingId = skeleton.TrackingId;
transformedSkeleton.SkeletonTrackingState = skeleton.SkeletonTrackingState;
//transformedSkeleton.utcSampleTime = skeleton.utcSampleTime;
transformedSkeleton.sourceKinectID = skeleton.sourceKinectID;
transformedSkeleton.Position = skeletonTransformation.Transform(skeleton.Position);
//Transform the joints
for (int i = 0; i < skeleton.skeleton.Count; i++)
{
transformedSkeleton.skeleton[i] = TransformJoint(skeleton.skeleton[i]);
}
return transformedSkeleton;
}