private static Rect getRect(RectTransform rectTransform, Canvas canvas, toPoint toPointDelegate) { Vector3[] array = new Vector3[4]; rectTransform.GetWorldCorners(array); Vector2 vector; Vector2 vector2; if (canvas.renderMode == RenderMode.ScreenSpaceOverlay) { vector = array[0]; vector2 = array[2]; } else { vector = toPointDelegate(array[0], canvas); vector2 = toPointDelegate(array[2], canvas); } return(new Rect(vector.x, vector.y, vector2.x - vector.x, vector2.y - vector.y)); }
private static Vector2[] getCorners(RectTransform rectTransform, Canvas canvas, toPoint toPointDelegate) { Vector3[] array = new Vector3[4]; rectTransform.GetWorldCorners(array); Vector2[] array2 = new Vector2[4]; for (int i = 0; i < 4; i++) { if (canvas.renderMode == RenderMode.ScreenSpaceOverlay) { ref Vector2 reference = ref array2[i]; reference = array[i]; }