Я реализовал пример кода и использовал «Joint.ID» вместо «Joint.Type», мне просто нужно выяснить, можно ли / как непрерывно проверять этот код в цикле.Любые советы будут высоко ценится.Спасибо.
Примечания: -
void newSensor_AllFramesReady
срабатывает при синхронизации цвета / глубины / скелета. Я не слишком уверен, где разместить этот метод.
checkHand
метод необходимо проверять каждый раунд потока.
Код на данный момент: -
void newSensor_AllFramesReady(object sender, SkeletonFrameReadyEventArgs e)
{
//Get a skeleton
SkeletonFrame skeletonSet = e.SkeletonFrame;
SkeletonData skeleton = (from s in skeletonSet.Skeletons
where s.TrackingState == SkeletonTrackingState.Tracked
select s).FirstOrDefault();
if (skeleton == null)
{
return;
}
else if (skeleton != null)
{
checkHand(skeleton.Joints[JointID.Head], skeleton.Joints[JointID.HandRight], skeleton.Joints[JointID.HandLeft]);
}
}
public void checkHand(Joint head, Joint rhand, Joint lhand)
{
if (rhand.Position.X > head.Position.Y)
{
MessageBox.Show("Right hand up!");
}
else if (lhand.Position.Y > head.Position.Y)
{
MessageBox.Show("Left hand up!");
}
}