public void UpdateDragging(Vector3 handPosition, MagnificationManager.DragMode dragMode)
    {
        Vector3 delta = handPosition - dragStartPosition;

        //delta = Camera.main.worldToCameraMatrix.MultiplyVector(delta);
        //delta.z = -delta.z;

        if (dragMode == MagnificationManager.DragMode.Move)
        {
            if (displayMode != DisplayMode3D.Tagalong)
            {
                Display.transform.position = imageStartPosition + delta * 2;
            }
        }
        else if (dragMode == MagnificationManager.DragMode.Scale)
        {
            delta = Camera.main.transform.InverseTransformDirection(delta);
            float dragFactor = 1;
            if (Math.Abs(delta.x) > Math.Abs(delta.y))
            {
                dragFactor = delta.x;
            }
            else
            {
                dragFactor = delta.y;
            }
            dragFactor = (float)Math.Pow(2, dragFactor * 3);
            SetScale(dragStartScale * dragFactor);
        }
        else if (dragMode == MagnificationManager.DragMode.Zoom)
        {
            delta = Camera.main.transform.InverseTransformDirection(delta);
            float dragFactor = 1;
            if (Math.Abs(delta.x) > Math.Abs(delta.y))
            {
                dragFactor = delta.x;
            }
            else
            {
                dragFactor = delta.y;
            }
            dragFactor = (float)Math.Pow(2, dragFactor * 3);
            SetZoom(dragStartZoom * dragFactor);
        }
    }
    public void UpdateDragging(Vector3 handPosition, MagnificationManager.DragMode dragMode)
    {
        Vector3 delta = handPosition - dragStartPosition;

        delta = Camera.main.transform.InverseTransformDirection(delta);

        if (dragMode == MagnificationManager.DragMode.Move)
        {
            float newX = imageStartPosition.x + delta.x * 3000;
            float newY = imageStartPosition.y + delta.y * 3000;
            SetPosition(new Vector2(newX, newY));
        }
        else if (dragMode == MagnificationManager.DragMode.Scale)
        {
            float dragFactor = 1;
            if (Math.Abs(delta.x) > Math.Abs(delta.y))
            {
                dragFactor = delta.x;
            }
            else
            {
                dragFactor = delta.y;
            }
            dragFactor = (float)Math.Pow(2, dragFactor * 3);
            SetScale(dragStartScale * dragFactor);
            //DebugText.text = "Zoom: " + zoom + ", Scale: " + scale + ", Width: " + resolution.x + ", Height: " + resolution.y;
        }
        else if (dragMode == MagnificationManager.DragMode.Zoom)
        {
            float dragFactor = 1;
            if (Math.Abs(delta.x) > Math.Abs(delta.y))
            {
                dragFactor = delta.x;
            }
            else
            {
                dragFactor = delta.y;
            }
            dragFactor = (float)Math.Pow(2, dragFactor * 3);
            SetZoom(dragStartZoom * dragFactor);
            //DebugText.text = "Zoom: " + zoom + ", Scale: " + scale + ", Width: " + resolution.x + ", Height: " + resolution.y;
        }
    }