コード例 #1
0
        private void testerEntréesEtSortiesDePostures(PostureAbstraite postureActuelle,
                                                      PostureAbstraite postureReconnue,
                                                      int numSquelette)
        {
            if (postureReconnue == null)
            {
                if (postureActuelle != null)
                {
                    onPostureChangée(
                        new PostureChangéeEventArgs(postureActuelle.Nom, false, true, numSquelette));
                }
            }
            else
            {
                if (postureActuelle == null)
                {
                    onPostureChangée(
                        new PostureChangéeEventArgs(postureReconnue.Nom, true, false, numSquelette));
                }
                else if (!postureActuelle.Equals(postureReconnue))
                {
                    onPostureChangée(
                        new PostureChangéeEventArgs(postureActuelle.Nom, false, true, numSquelette));

                    onPostureChangée(
                        new PostureChangéeEventArgs(postureReconnue.Nom, true, false, numSquelette));
                }
            }
        }
コード例 #2
0
        private void OnSkeletonFrameReady(object sender, SkeletonFrameReadyEventArgs e)
        {
            using (SkeletonFrame frame = e.OpenSkeletonFrame())
            {
                frame.CopySkeletonDataTo(tabSquelettes);

                for (int i = 0; i < tabSquelettes.Length && i < maxSquelettes; i++)
                {
                    PostureAbstraite postureReconnue = getPostureReconnue(tabSquelettes[i]);

                    testerEntréesEtSortiesDePostures(postureActuellesParSquelette[i], postureReconnue, i);

                    postureActuellesParSquelette[i] = postureReconnue;
                }
            }
        }
コード例 #3
0
 /// <summary>
 /// Retirer une posture de la liste des postures à reconnaître.
 /// </summary>
 /// <param name="posture"></param>
 public void retirerPosture(PostureAbstraite posture)
 {
     postures.Remove(posture);
 }
コード例 #4
0
 /// <summary>
 /// Ajouter une posture à reconnaître.
 /// </summary>
 /// <param name="posture">La posture en question.</param>
 public void ajouterPosture(PostureAbstraite posture)
 {
     postures.Add(posture);
 }