public override void Create() { TouchMovX = 0.0f; TouchMovY = 0.0f; RotateTouchMovX = 0.0f; RotateTouchMovY = 0.0f; touchDelta = 0.0f; speedTouch0 = 0.0f; speedTouch1 = 0.0f; minPinchSpeed = 5.0f; varianceInDistances = 5.0f; bIsTouch = false; TowFingerTouch = false; bIsTowFingerTouchMove = false; m_TouchPos = Vector3.zero; Touch1_OriginPos = Vector2.zero; Touch2_OriginPos = Vector2.zero; TwoTouch1_OriginPos = Vector2.zero; TwoTouch2_OriginPos = Vector2.zero; prevDist = Vector2.zero; curDist = Vector2.zero; Touch_prevDist = Vector2.zero; Touch_curDist = Vector2.zero; ZoomState = (int)ZOOM_STATE._NULL; TouchZoomInOutState = (int)TOUCH_ZOOM_IN_OUT_STATE._NULL; TwoFingerStepState = TWO_FINGER_STEP._NULL; }
public override void SetTwoFingerStateStarRotate() { TwoFingerStepState = TWO_FINGER_STEP._STAR_ROTATE; SetTwoFingerState(TWO_FINGER_STATE._STAR_ROTATE); }
public override void ReSetTwoFingerState() { TwoFingerStepState = TWO_FINGER_STEP._NULL; SetTwoFingerState(TWO_FINGER_STATE._NULL); }
public override void SetTwoFingerStepState() { if (Input.touchCount != 2) { SetTwoFingerState(TWO_FINGER_STATE._NULL); TwoFingerStepState = TWO_FINGER_STEP._NULL; } if (TwoFingerStepState == TWO_FINGER_STEP._NULL) { TwoFingerStepState = TWO_FINGER_STEP._FIRST_TOUCH; } else if (TwoFingerStepState == TWO_FINGER_STEP._FIRST_TOUCH) { ResetAxis(); TwoTouch1_OriginPos = Input.GetTouch(0).position; TwoTouch2_OriginPos = Input.GetTouch(1).position; TwoFingerStepState = TWO_FINGER_STEP._CHOICE; } else if (TwoFingerStepState == TWO_FINGER_STEP._CHOICE_WAIT) { ResetAxis(); SetTwoFingerState(TWO_FINGER_STATE._NULL); TwoFingerStepState = TWO_FINGER_STEP._CHOICE; } else if (TwoFingerStepState == TWO_FINGER_STEP._CHOICE) { Vector2 Pos = TwoTouch1_OriginPos - Input.GetTouch(0).position; Vector2 Pos2 = TwoTouch2_OriginPos - Input.GetTouch(1).position; if (Pos == Pos2) { ResetAxis(); SetTwoFingerState(TWO_FINGER_STATE._NULL); TwoFingerStepState = TWO_FINGER_STEP._NULL; return; } float GapX = Mathf.Abs(Pos.x); float GapY = Mathf.Abs(Pos.y); float GapX2 = Mathf.Abs(Pos2.x); float GapY2 = Mathf.Abs(Pos2.y); if (GapX >= 15 || GapY >= 15 || GapX2 >= 15 || GapY >= 15) { } else { TwoFingerStepState = TWO_FINGER_STEP._CHOICE_WAIT; return; } if ((Pos.x > 0.0f && Pos2.x > 0.0f) || (Pos.x < 0.0f && Pos2.x < 0.0f)) { TwoFingerStepState = TWO_FINGER_STEP._MOVE; } else { TwoFingerStepState = TWO_FINGER_STEP._SMOTH_ZOOM_IN_OUT; } } else if (TwoFingerStepState == TWO_FINGER_STEP._SMOTH_ZOOM_IN_OUT) { SetTwoFingerState(TWO_FINGER_STATE._SMOTH_ZOOM_IN_OUT); } else if (TwoFingerStepState == TWO_FINGER_STEP._MOVE) { SetTwoFingerState(TWO_FINGER_STATE._MOVE); } }