private string getInfo(KinectInterop.HandState show, 手势 shoushi) { string info = string.Empty; switch (show) { case KinectInterop.HandState.Closed: info = "你出的是石头\n"; break; case KinectInterop.HandState.Lasso: info = "你出的是剪刀\n"; break; case KinectInterop.HandState.Open: info = "你出的是布\n"; break; default: info = "请出招...\n"; return(info); } switch (shoushi) { case 手势.石头: info += "电脑出的是石头\n"; break; case 手势.剪刀: info += "电脑出的是剪刀\n"; break; case 手势.布: info += "电脑出的是布\n"; break; } int res = contrast(show, shoushi); if (res == 1) { info += "哈哈哈,你赢了\n"; } else if (res == -1) { info += "哈哈哈,你输了\n"; } else if (res == 0) { info += "哈哈哈,平手"; } else { info += "你的手势未识别"; } state = true;//识别完成 return(info); }
private int contrast(KinectInterop.HandState show, 手势 shoushi) { int rssult = 0; switch (show) { case KinectInterop.HandState.Closed: switch (shoushi) { case 手势.石头: rssult = 0; break; case 手势.剪刀: rssult = 1; break; case 手势.布: rssult = -1; break; } break; case KinectInterop.HandState.Lasso: switch (shoushi) { case 手势.石头: rssult = -1; break; case 手势.剪刀: rssult = 0; break; case 手势.布: rssult = 1; break; } break; case KinectInterop.HandState.Open: switch (shoushi) { case 手势.石头: rssult = 1; break; case 手势.剪刀: rssult = -1; break; case 手势.布: rssult = 0; break; } break; default: rssult = 10; break; } return(rssult); }