private IEnumerator CheckMultiTapCount() { while (true) { for (int k = 0; k < multiTapMouse.Length; k++) { MultiTapTracker multiTap = multiTapMouse[k]; if (multiTap.count > 0 && multiTap.lastTapTime + multiTapInterval < Time.realtimeSinceStartup) { multiTap.count = 0; multiTap.lastPos = Vector2.zero; } } for (int j = 0; j < multiTapTouch.Length; j++) { MultiTapTracker multiTap2 = multiTapTouch[j]; if (multiTap2.count > 0 && multiTap2.lastTapTime + multiTapInterval < Time.realtimeSinceStartup) { multiTap2.count = 0; multiTap2.lastPos = Vector2.zero; } } for (int i = 0; i < multiTapMFTouch.Length; i++) { MultiTapTracker multiTap3 = multiTapMFTouch[i]; if (multiTap3.count > 0 && multiTap3.lastTapTime + multiTapInterval < Time.realtimeSinceStartup) { multiTap3.count = 0; multiTap3.lastPos = Vector2.zero; multiTap3.fingerCount = 1; } } yield return(null); } }
// Use this for initialization void Start() { if (enableMultiTapFilter) { IT_Gesture.SetMultiTapFilter(enableMultiTapFilter); IT_Gesture.SetMaxMultiTapCount(maxMultiTapCount); IT_Gesture.SetMaxMultiTapInterval(multiTapInterval); } for (int i = 0; i < multiTapMouse.Length; i++) { multiTapMouse[i] = new MultiTapTracker(i); } for (int i = 0; i < multiTapTouch.Length; i++) { multiTapTouch[i] = new MultiTapTracker(i); } for (int i = 0; i < multiTapMFTouch.Length; i++) { multiTapMFTouch[i] = new MultiTapTracker(i); } StartCoroutine(CheckMultiTapCount()); StartCoroutine(MultiFingerRoutine()); //Debug.Log(IT_Gesture.GetTouch(0).position); }
public void CheckMultiTapMFTouch(int fCount, Vector2[] posL, int[] indexes) { Vector2 a = Vector2.zero; for (int i = 0; i < posL.Length; i++) { a += posL[i]; } a /= posL.Length; int num = 0; bool flag = false; for (int j = 0; j < multiTapMFTouch.Length; j++) { MultiTapTracker multiTapTracker = multiTapMFTouch[j]; if (multiTapTracker.fingerCount == fCount && Vector2.Distance(a, multiTapTracker.lastPos) < multiTapPosSpacing * IT_Gesture.GetDPIFactor()) { flag = true; break; } num++; } if (!flag) { num = 0; for (int k = 0; k < multiTapMFTouch.Length; k++) { MultiTapTracker multiTapTracker2 = multiTapMFTouch[k]; if (multiTapTracker2.lastPos == Vector2.zero && multiTapTracker2.count == 0) { break; } num++; } } if (multiTapMFTouch[num].lastTapTime > Time.realtimeSinceStartup - multiTapInterval) { multiTapMFTouch[num].count++; multiTapMFTouch[num].lastPos = a; multiTapMFTouch[num].fingerCount = fCount; multiTapMFTouch[num].lastTapTime = Time.realtimeSinceStartup; IT_Gesture.MultiTap(new Tap(multiTapMFTouch[num].count, fCount, posL, indexes)); if (multiTapMFTouch[num].count >= maxMultiTapCount) { multiTapMFTouch[num].count = 0; } } else { multiTapMFTouch[num].count = 1; multiTapMFTouch[num].lastPos = a; multiTapMFTouch[num].fingerCount = fCount; multiTapMFTouch[num].lastTapTime = Time.realtimeSinceStartup; IT_Gesture.MultiTap(new Tap(multiTapMFTouch[num].count, fCount, posL, indexes)); } }
IEnumerator CheckMultiTapCount() { while (true) { //foreach(MultiTapTracker multiTap in multiTapMouse){ for (int i = 0; i < multiTapMouse.Length; i++) { MultiTapTracker multiTap = multiTapMouse[i]; if (multiTap.count > 0) { if (multiTap.lastTapTime + multiTapInterval < Time.realtimeSinceStartup) { multiTap.count = 0; multiTap.lastPos = Vector2.zero; } } } //foreach(MultiTapTracker multiTap in multiTapTouch){ for (int i = 0; i < multiTapTouch.Length; i++) { MultiTapTracker multiTap = multiTapTouch[i]; if (multiTap.count > 0) { if (multiTap.lastTapTime + multiTapInterval < Time.realtimeSinceStartup) { multiTap.count = 0; multiTap.lastPos = Vector2.zero; } } } //foreach(MultiTapTracker multiTap in multiTapMFTouch){ for (int i = 0; i < multiTapMFTouch.Length; i++) { MultiTapTracker multiTap = multiTapMFTouch[i]; if (multiTap.count > 0) { if (multiTap.lastTapTime + multiTapInterval < Time.realtimeSinceStartup) { multiTap.count = 0; multiTap.lastPos = Vector2.zero; multiTap.fingerCount = 1; } } } yield return(null); } }
// Use this for initialization void Start () { for(int i=0; i<multiTapMouse.Length; i++){ multiTapMouse[i]=new MultiTapTracker(i); } for(int i=0; i<multiTapTouch.Length; i++){ multiTapTouch[i]=new MultiTapTracker(i); } for(int i=0; i<multiTapMFTouch.Length; i++){ multiTapMFTouch[i]=new MultiTapTracker(i); } StartCoroutine(CheckMultiTapCount()); StartCoroutine(MultiFingerRoutine()); //Debug.Log(Gesture.GetTouch(0).position); }
// Use this for initialization void Start() { for (int i = 0; i < multiTapMouse.Length; i++) { multiTapMouse[i] = new MultiTapTracker(i); } for (int i = 0; i < multiTapTouch.Length; i++) { multiTapTouch[i] = new MultiTapTracker(i); } for (int i = 0; i < multiTapMFTouch.Length; i++) { multiTapMFTouch[i] = new MultiTapTracker(i); } StartCoroutine(CheckMultiTapCount()); StartCoroutine(MultiFingerRoutine()); //Debug.Log(Gesture.GetTouch(0).position); }
private void Start() { if (enableMultiTapFilter) { IT_Gesture.SetMultiTapFilter(enableMultiTapFilter); IT_Gesture.SetMaxMultiTapCount(maxMultiTapCount); IT_Gesture.SetMaxMultiTapInterval(multiTapInterval); } for (int i = 0; i < multiTapMouse.Length; i++) { multiTapMouse[i] = new MultiTapTracker(i); } for (int j = 0; j < multiTapTouch.Length; j++) { multiTapTouch[j] = new MultiTapTracker(j); } for (int k = 0; k < multiTapMFTouch.Length; k++) { multiTapMFTouch[k] = new MultiTapTracker(k); } StartCoroutine(CheckMultiTapCount()); StartCoroutine(MultiFingerRoutine()); }
// Use this for initialization void Start () { if(enableMultiTapFilter){ IT_Gesture.SetMultiTapFilter(enableMultiTapFilter); IT_Gesture.SetMaxMultiTapCount(maxMultiTapCount); IT_Gesture.SetMaxMultiTapInterval(multiTapInterval); } for(int i=0; i<multiTapMouse.Length; i++){ multiTapMouse[i]=new MultiTapTracker(i); } for(int i=0; i<multiTapTouch.Length; i++){ multiTapTouch[i]=new MultiTapTracker(i); } for(int i=0; i<multiTapMFTouch.Length; i++){ multiTapMFTouch[i]=new MultiTapTracker(i); } StartCoroutine(CheckMultiTapCount()); StartCoroutine(MultiFingerRoutine()); //Debug.Log(IT_Gesture.GetTouch(0).position); }
public void CheckMultiTapMFTouch(int fCount, Vector2[] posL, int[] indexes) { Vector2 pos = Vector2.zero; //foreach(Vector2 p in posL){ // pos+=p; //} for (int i = 0; i < posL.Length; i++) { pos += posL[i]; } pos /= posL.Length; int index = 0; bool match = false; //foreach(MultiTapTracker multiTap in multiTapMFTouch){ for (int i = 0; i < multiTapMFTouch.Length; i++) { MultiTapTracker multiTap = multiTapMFTouch[i]; if (multiTap.fingerCount == fCount) { if (Vector2.Distance(pos, multiTap.lastPos) < multiTapPosSpacing * IT_Gesture.GetDPIFactor()) { match = true; break; } } index += 1; } if (!match) { index = 0; //foreach(MultiTapTracker multiTap in multiTapMFTouch){ for (int i = 0; i < multiTapMFTouch.Length; i++) { MultiTapTracker multiTap = multiTapMFTouch[i]; if (multiTap.lastPos == Vector2.zero && multiTap.count == 0) { break; } index += 1; } } if (multiTapMFTouch[index].lastTapTime > Time.realtimeSinceStartup - multiTapInterval) { multiTapMFTouch[index].count += 1; multiTapMFTouch[index].lastPos = pos; multiTapMFTouch[index].fingerCount = fCount; multiTapMFTouch[index].lastTapTime = Time.realtimeSinceStartup; IT_Gesture.MultiTap(new Tap(multiTapMFTouch[index].count, fCount, posL, indexes)); if (multiTapMFTouch[index].count >= maxMultiTapCount) { multiTapMFTouch[index].count = 0; } } else { multiTapMFTouch[index].count = 1; multiTapMFTouch[index].lastPos = pos; multiTapMFTouch[index].fingerCount = fCount; multiTapMFTouch[index].lastTapTime = Time.realtimeSinceStartup; IT_Gesture.MultiTap(new Tap(multiTapMFTouch[index].count, fCount, posL, indexes)); } }