2014-02-25 86 views
1

我正在製作一個有點像Kinect的WebServer WPF示例一樣工作的應用程序。我目前正在嘗試將手位置映射到屏幕座標,以便它們可以像遊標一樣工作。看起來一切都很好,所以讓我們看看InteractionHandPointer documentationKinect HandPointer座標

獲取交互調整的手形指針位置的X座標。 0.0對應於交互區域的左邊緣,1.0對應於交互區域的右邊緣,但是值可能在該範圍之外。

對Y.哇,這聽起來不錯。如果它是介於0和1之間的值,我可以將其乘以屏幕分辨率並獲取我的座標,對不對?

嘛,原來它定期返回該範圍以外的值,會低至-3和高達4我也查了SkeletonPoint,但米用法規模使得它更難可靠地使用。

那麼,有沒有人有使用InteractionHandPointer的運氣?如果是這樣,你做了什麼樣的調整?

問候,若昂 費爾南德斯

回答

1

的相互作用區是爲每個手,其中用戶可以舒適地相互作用的區域。當該值小於0或大於1時,用戶的手在交互區域之外,並且應該忽略該移動。

+0

我意識到,但該地區似乎如此敏感。用戶甚至不會在離開交互區域的情況下伸展他們的手臂超過10-15度(對於X軸)。有沒有辦法優化它? – JSFernandes

0

對於那些想知道的問題,如kallocain所說,如果該值大於1或低於0,則用戶的手在交互區域之外。這個區域的邊界不可配置的事實是相當麻煩的。

當這些值超出這些值時,您確實可以選擇忽略它們。而不是這樣做,我以這種方式將它們綁定到該地區:

Math.Max(0, Math.Min(hand.x, 1)) 

我希望這有助於某人某一天。

相關問題