2012-06-26 92 views
3

我正在編寫一個統一的3d遊戲,在這裏我將一個3d模型上的kinect骨架映射。編程一個「向左傾斜和向右傾斜」 - Kinect中的手勢

現在我必須檢查,如果玩家向左或向右傾斜......這是我的問題。

我已經按照這個網站:http://blogs.msdn.com/b/mcsuksoldev/archive/2011/08/08/writing-a-gesture-service-with-the-kinect-for-windows-sdk.aspx

而現在,我正在尋找一個正確實施精益geasture的。

有沒有人有想法,我該如何解決這個問題?我必須在某些地方做出這種姿態,所以我可以認出一個傾斜。我已經試過類似:if left shoulder.x < hips_left.x or left.shoulder.x > hips_left.x,但不工作那麼好......

我真的需要你的幫助:)

回答

6

我會用像成才,也許你的想法結合

if(left.shoulder.y == right.shoulder.y){ 
    //No Direction 
}else if(left.shoulder.y < right.shoulder.y){ 
    //leaning left 
}else{ 
    //leaning right 
} 

也許你可以使用head.x POS太

編輯:

我不知道,如果這個工程完美,但在我的測試中,它確實工作

if((left.shoulder.y + tollerance) >= right.shoulder.y && (left.shoulder.y - tollerance) <= right.shoulder.y){ 
    //No Direction 
}else if(left.shoulder.y < right.shoulder.y){ 
    //leaning left 
}else{ 
    //leaning right 
} 
+0

嘿,我想這可以與我的想法一起工作!我會試試看。謝謝! – Frame91

+1

爲了減少誤報,您還應該使用閾值。條件可能如下所示:然後:left.shoulder.y

+2

我會在開始時添加thresholdValue,您在兩個方向都有閾值 – nidomiro