public void AddFinger(OTTouchFinger finger) { if (!fingers.Contains(finger)) { fingers.Add(finger); finger.gesture = this; } }
public void RemoveFinger(OTTouchFinger finger) { if (fingers.Contains(finger)) { fingers.Remove(finger); finger.gesture = null; } }
public void Assign(OTTouchFinger finger) { fingerId = finger.fingerId; position = finger.position; deltaPosition = finger.deltaPosition; deltaTime = finger.deltaTime; tapCount = finger.tapCount; phase = finger.phase; }
static void GetFingers() { if (OT.mobile) { fingerChecks.Clear(); int i; for (i = 0; i < Input.touches.Length; i++) { fingerChecks.Add(Input.touches[i].fingerId); } // remove fingers that have gone i = 0; while (i < fingers.Count) { if (!fingerChecks.Contains(fingers[i].fingerId)) { OTTouchFinger finger = fingers[i]; OTTouchFinger.lookup.Remove(finger.fingerId); if (finger.gesture != null) { finger.gesture.RemoveFinger(finger); } fingers.RemoveAt(i); } else { i++; } } // update and add new fingers for (i = 0; i < Input.touches.Length; i++) { OTTouchFinger finger = OTTouchFinger.Lookup(Input.touches[i]); if (finger == null) { fingers.Add(new OTTouchFinger(Input.touches[i])); gestures.Add(new OTTouchGesture(fingers[fingers.Count - 1])); } else { finger.Assign(Input.touches[i]); } } } for (int i = 0; i < fingers.Count; i++) { fingers[i].Update(); } }
public OTTouchGesture(OTTouchFinger finger) { type = Type.Press; fingers.Add(finger); finger.gesture = this; }
public OTTouchFinger(OTTouchFinger finger) { Assign(finger); }