zoukankan      html  css  js  c++  java
  • EasyTouch物体的旋转缩放

    public class ArMonoDevelop : MonoBehaviour
    {
    
        // Use this for initialization
        //需要放大缩小旋转的物体
        public GameObject rotateAndEnlargeObj;
        public bool isRotate = true;
        public bool isEnlarge = true;
    
        void Start()
        {
    
        }
        void OnEnable()
        {
            if (isRotate)
            {
                EasyTouch.On_Drag += OnDrag;
            }
    
            if (isEnlarge)
            {
                EasyTouch.On_PinchIn += OnPinchIn;
                EasyTouch.On_PinchOut += OnPinchOut;
            }
    
            EasyTouch.On_SimpleTap += OnSimpleTap;
            EasyTouch.On_DoubleTap += OnDoubleTap;
    
        }
        void OnDisable()
        {
            if (isRotate)
            {
                EasyTouch.On_Drag -= OnDrag;
            }
    
            if (isEnlarge)
            {
                EasyTouch.On_PinchIn -= OnPinchIn;
                EasyTouch.On_PinchOut -= OnPinchOut;
            }
    
            EasyTouch.On_SimpleTap -= OnSimpleTap;
            EasyTouch.On_DoubleTap -= OnDoubleTap;
        }
        void OnSimpleTap(Gesture gest)
        {
            if (gest.pickedObject != null)
            {
                SimpleTap(gest);
            }
            else
            {
                Vuforia.CameraDevice.Instance.SetFocusMode(Vuforia.CameraDevice.FocusMode.FOCUS_MODE_TRIGGERAUTO);
            }
        }
        protected virtual void SimpleTap(Gesture gest)
        {
    
        }
        void OnDoubleTap(Gesture gest)
        {
            if (gest.pickedObject != null)
            {
                DoubleTap(gest);
            }
        }
        protected virtual void DoubleTap(Gesture gest)
        {
    
        }
        void OnDrag(Gesture gest)
        {
            if (gest.pickedObject != null)
            {
                if (rotateAndEnlargeObj != null)
                {
                    Vector3 v = rotateAndEnlargeObj.transform.localRotation.eulerAngles;
                    v.y -= gest.deltaPosition.x * 20 * Time.deltaTime;
                    v.y -= gest.deltaPosition.y * 20 * Time.deltaTime;
                    rotateAndEnlargeObj.transform.localRotation = Quaternion.Euler(v);
                }
            }
        }
        void OnPinchIn(Gesture gest)
        {
            if (gest.pickedObject != null)
            {
                if (rotateAndEnlargeObj != null)
                {
                    Vector3 localScale = rotateAndEnlargeObj.transform.localScale;
                    float num = (0.01f * gest.deltaPinch);
                    rotateAndEnlargeObj.transform.localScale = new Vector3(localScale.x - num, localScale.y - num, localScale.z - num);
                    if (rotateAndEnlargeObj.transform.localScale.x < 1)
                    {
                        rotateAndEnlargeObj.transform.localScale = new Vector3(1, 1, 1);
                    }
                }
            }
    
        }
        void OnPinchOut(Gesture gest)
        {
            if (gest.pickedObject != null)
            {
    
                if (rotateAndEnlargeObj != null)
                {
                    Vector3 localScale = rotateAndEnlargeObj.transform.localScale;
                    float num = (0.01f * gest.deltaPinch);
                    rotateAndEnlargeObj.transform.localScale = new Vector3(localScale.x + num, localScale.y + num, localScale.z + num);
                    if (rotateAndEnlargeObj.transform.localScale.x > 2)
                    {
                        rotateAndEnlargeObj.transform.localScale = new Vector3(2, 2, 2);
                    }
                }
            }
        }
    }
  • 相关阅读:
    typeof 和 Object.prototype.toString 的区别
    获取地理信息的JavaScript 库 -- YQL Geo
    关于html5手机
    我看过的书的示例网站
    解决跨浏览器问题网站收集
    【docker】docker初试与填坑
    sunJCE or ibmJce,was服务器下使用des的注意点
    cxf-webservice-在was6服务器上运行
    微星b85(b85i b85-gaming) 系列dsdt
    IE10的bug?disabled button如何触发事件
  • 原文地址:https://www.cnblogs.com/JimmyCode/p/7834749.html
Copyright © 2011-2022 走看看