1
サンプルコードを実装し、 'Joint.Type'の代わりに 'Joint.ID'を使用しました。ループ内で連続してチェックすることができます。アドバイスをいただければ幸いです。ありがとう。アドバイスのKinectを使用して単純な静的ジェスチャーのジェスチャー定義を作成する - パート2
注: -
は
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!");
}
}