void OnNavigationUpdate(Vector3 delta)
 {
     extraOperatingEndTime = Time.realtimeSinceStartup + 0.2f;
     if (currentOperationType == ExtraOperationType.Rotate)
     {
         //DoExtraRotation(new Vector3(0, delta.x * 2, 0));
         DoExtraRotation(delta.x * -2f);
     }
     else if (currentOperationType == ExtraOperationType.Scale)
     {
         DoExtraScale(delta.y * 0.03f);
     }
     else
     {
         if (Mathf.Abs(delta.x) > Mathf.Abs(delta.y))
         {
             currentOperationType = ExtraOperationType.Rotate;
             //currentRorateFactorDelta = currentRotateFactor;
         }
         else
         {
             currentOperationType = ExtraOperationType.Scale;
         }
     }
 }
 void OnNavigationStart(Vector3 delta)
 {
     currentOperationType  = ExtraOperationType.Unknown;
     extraOperating        = true;
     extraOperatingEndTime = Time.realtimeSinceStartup + 0.2f;
     Debug.Log("navigation start");
 }
Example #3
0
    //private float lastValue = 0;
    private void OnSliderRotate(float value)
    {
        if (!ignoreSliderChangedEvent)
        {
            //Debug.Log("来发送");
            extraOperating = true;
        }

        SetRotation(new Vector3(0, value * 180, 0));

        currentOperationType  = ExtraOperationType.Rotate;
        extraOperatingEndTime = Time.realtimeSinceStartup + 0.2f;
    }
    private void OnSliderScale(float value)
    {
        //Debug.Log("Scale:" + value);
        if (!ignoreSliderChangedEvent)
        {
            //Debug.Log("来发送");
            extraOperating = true;
        }

        currentOperationType = ExtraOperationType.Scale;

        DoSetScale(value);

        extraOperatingEndTime = Time.realtimeSinceStartup + 0.2f;
    }
    private void OnSliderRotate(float value)
    {
        // 给抖动添加缓冲,如果小于某个值则不进行旋转

        difference = value - lastValue;
        // Debug.Log("Diference ============" + difference);
        lastValue = value;
        if (difference > 0.001f || difference < 0.001f)
        {
            // Debug.Log("拖动进度条:" + value);
            if (!ignoreSliderChangedEvent)
            {
                //Debug.Log("来发送");
                extraOperating = true;
            }

            SetRotation(new Vector3(0, value * 180, 0));

            currentOperationType  = ExtraOperationType.Rotate;
            extraOperatingEndTime = Time.realtimeSinceStartup + 0.2f;
        }
    }
 void OnNavigationEnd(Vector3 delta)
 {
     Debug.Log("navigation end");
     extraOperating       = false;
     currentOperationType = ExtraOperationType.Unknown;
 }