// Event handler for the HandTrackerUpdate event private void onHandTrackerUpdate(HandTrackerData handTrackerData) { if (_handTrackerData != null) { _handTrackerData.Dispose(); } _handTrackerData = (HandTrackerData)handTrackerData.Clone(); }
void NuitrackManager_onHandsTrackerUpdate(HandTrackerData handTrackerData) { //Debug.Log ("on hands tracker update"); if (handTrackerData != null) { nuitrack.UserHands userHands = handTrackerData.GetUserHandsByID(CurrentUserTracker.CurrentUser); if (userHands != null) { if (currentHand == Hands.right && userHands.RightHand != null) { camera_connected = true; Debug.Log("update right hand"); righthand.x = userHands.RightHand.Value.X * Screen.width; righthand.y = (1f - userHands.RightHand.Value.Y) * Screen.height; } else { if (currentHand == Hands.right) { Debug.Log("null RightHand"); //camera_connected = false; } } if (currentHand == Hands.left && userHands.LeftHand != null) { camera_connected = true; Debug.Log("update left hand"); lefthand.x = userHands.LeftHand.Value.X * Screen.width; lefthand.y = (1f - userHands.LeftHand.Value.Y) * Screen.height; } else { if (currentHand == Hands.left) { Debug.Log("null LeftHand"); //camera_connected = false; } } } else { Debug.Log("null userHands"); camera_connected = false; } } }
// Event handler for the HandTrackerUpdate event private void onHandTrackerUpdate(HandTrackerData handTrackerData) { _handTrackerData = handTrackerData; if (_handTrackerData != null) { foreach (var hand in _handTrackerData.UsersHands) { if (hand.RightHand != null && hand.LeftHand != null) { Debug.WriteLine("Left hand {0} | Right hand {1}", hand.LeftHand.Value.Pressure.ToString(), hand.RightHand.Value.Pressure.ToString()); } } } }
public HandTrackerDataEventArgs(HandTrackerData handTrackerData) { HandTrackerData = handTrackerData; }
// Event handler for the HandTrackerUpdate event private void onHandTrackerUpdate(HandTrackerData handTrackerData) { _handTrackerData = handTrackerData; }
internal void UpdateData(SkeletonData skeletonData, HandTrackerData handTrackerData, GestureData gestureData, JsonInfo jsonInfo) { foreach (UserData user in this) { user.Reset(); } List <int> oldUsersIDs = new List <int>(users.Keys); List <int> newUsersIDs = new List <int>(); if (skeletonData != null) { foreach (Skeleton skeleton in skeletonData.Skeletons) { TryGetUser(skeleton.ID, ref newUsersIDs).AddData(skeleton); } } if (handTrackerData != null) { foreach (UserHands hands in handTrackerData.UsersHands) { TryGetUser(hands.UserId, ref newUsersIDs).AddData(hands); } } if (gestureData != null) { foreach (Gesture gesture in gestureData.Gestures) { TryGetUser(gesture.UserID, ref newUsersIDs).AddData(gesture); } } if (jsonInfo != null && jsonInfo.Instances != null) { foreach (Instances instances in jsonInfo.Instances) { if (!instances.face.IsEmpty) { TryGetUser(instances.id, ref newUsersIDs).AddData(instances.face); } } } foreach (int userID in newUsersIDs) { if (!oldUsersIDs.Contains(userID)) { OnUserEnter?.Invoke(users[userID]); } } foreach (int userID in oldUsersIDs) { if (!newUsersIDs.Contains(userID)) { OnUserExit?.Invoke(users[userID]); users[userID].Dispose(); users.Remove(userID); } } if (users.Count == 0) { CurrentUserID = 0; } else { if (CurrentUserID != 0 && !users.ContainsKey(CurrentUserID)) { CurrentUserID = 0; } if (CurrentUserID == 0) { CurrentUserID = users.Keys.First(); } } }