| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226 | 
							- using UnityEngine;
 
- namespace XCharts.Runtime
 
- {
 
-     public static class LayerHelper
 
-     {
 
-         private static Vector2 s_Vector0And0 = new Vector2(0, 0);
 
-         private static Vector2 s_Vector0And0Dot5 = new Vector2(0, 0.5f);
 
-         private static Vector2 s_Vector0And1 = new Vector2(0, 1f);
 
-         private static Vector2 s_Vector0Dot5And1 = new Vector2(0.5f, 1f);
 
-         private static Vector2 s_Vector0Dot5And0Dot5 = new Vector2(0.5f, 0.5f);
 
-         private static Vector2 s_Vector0Dot5And0 = new Vector2(0.5f, 0f);
 
-         private static Vector2 s_Vector1And1 = new Vector2(1f, 1f);
 
-         private static Vector2 s_Vector1And0Dot5 = new Vector2(1f, 0.5f);
 
-         private static Vector2 s_Vector1And0 = new Vector2(1f, 0);
 
-         internal static Vector2 ResetChartPositionAndPivot(Vector2 minAnchor, Vector2 maxAnchor, float width,
 
-             float height, ref float chartX, ref float chartY)
 
-         {
 
-             if (IsLeftTop(minAnchor, maxAnchor))
 
-             {
 
-                 chartX = 0;
 
-                 chartY = -height;
 
-                 return s_Vector0And1;
 
-             }
 
-             else if (IsLeftCenter(minAnchor, maxAnchor))
 
-             {
 
-                 chartX = 0;
 
-                 chartY = -height / 2;
 
-                 return s_Vector0And0Dot5;
 
-             }
 
-             else if (IsLeftBottom(minAnchor, maxAnchor))
 
-             {
 
-                 chartX = 0;
 
-                 chartY = 0;
 
-                 return s_Vector0And0;
 
-             }
 
-             else if (IsCenterTop(minAnchor, maxAnchor))
 
-             {
 
-                 chartX = -width / 2;
 
-                 chartY = -height;
 
-                 return s_Vector0Dot5And1;
 
-             }
 
-             else if (IsCenterCenter(minAnchor, maxAnchor))
 
-             {
 
-                 chartX = -width / 2;
 
-                 chartY = -height / 2;
 
-                 return s_Vector0Dot5And0Dot5;
 
-             }
 
-             else if (IsCenterBottom(minAnchor, maxAnchor))
 
-             {
 
-                 chartX = -width / 2;
 
-                 chartY = 0;
 
-                 return s_Vector0Dot5And0;
 
-             }
 
-             else if (IsRightTop(minAnchor, maxAnchor))
 
-             {
 
-                 chartX = -width;
 
-                 chartY = -height;
 
-                 return s_Vector1And1;
 
-             }
 
-             else if (IsRightCenter(minAnchor, maxAnchor))
 
-             {
 
-                 chartX = -width;
 
-                 chartY = -height / 2;
 
-                 return s_Vector1And0Dot5;
 
-             }
 
-             else if (IsRightBottom(minAnchor, maxAnchor))
 
-             {
 
-                 chartX = -width;
 
-                 chartY = 0;
 
-                 return s_Vector1And0;
 
-             }
 
-             else if (IsStretchTop(minAnchor, maxAnchor))
 
-             {
 
-                 chartX = -width / 2;
 
-                 chartY = -height;
 
-                 return s_Vector0Dot5And1;
 
-             }
 
-             else if (IsStretchMiddle(minAnchor, maxAnchor))
 
-             {
 
-                 chartX = -width / 2;
 
-                 chartY = -height / 2;
 
-                 return s_Vector0Dot5And0Dot5;
 
-             }
 
-             else if (IsStretchBottom(minAnchor, maxAnchor))
 
-             {
 
-                 chartX = -width / 2;
 
-                 chartY = 0;
 
-                 return s_Vector0Dot5And0;
 
-             }
 
-             else if (IsStretchLeft(minAnchor, maxAnchor))
 
-             {
 
-                 chartX = 0;
 
-                 chartY = -height / 2;
 
-                 return s_Vector0And0Dot5;
 
-             }
 
-             else if (IsStretchCenter(minAnchor, maxAnchor))
 
-             {
 
-                 chartX = -width / 2;
 
-                 chartY = -height / 2;
 
-                 return s_Vector0Dot5And0Dot5;
 
-             }
 
-             else if (IsStretchRight(minAnchor, maxAnchor))
 
-             {
 
-                 chartX = -width;
 
-                 chartY = -height / 2;
 
-                 return s_Vector1And0Dot5;
 
-             }
 
-             else if (IsStretchStrech(minAnchor, maxAnchor))
 
-             {
 
-                 chartX = -width / 2;
 
-                 chartY = -height / 2;
 
-                 return s_Vector0Dot5And0Dot5;
 
-             }
 
-             chartX = 0;
 
-             chartY = 0;
 
-             return Vector2.zero;
 
-         }
 
-         private static bool IsLeftTop(Vector2 minAnchor, Vector2 maxAnchor)
 
-         {
 
-             return minAnchor == s_Vector0And1 && maxAnchor == s_Vector0And1;
 
-         }
 
-         private static bool IsLeftCenter(Vector2 minAnchor, Vector2 maxAnchor)
 
-         {
 
-             return minAnchor == s_Vector0And0Dot5 && maxAnchor == s_Vector0And0Dot5;
 
-         }
 
-         private static bool IsLeftBottom(Vector2 minAnchor, Vector2 maxAnchor)
 
-         {
 
-             return minAnchor == Vector2.zero && maxAnchor == Vector2.zero;
 
-         }
 
-         private static bool IsCenterTop(Vector2 minAnchor, Vector2 maxAnchor)
 
-         {
 
-             return minAnchor == s_Vector0Dot5And1 && maxAnchor == s_Vector0Dot5And1;
 
-         }
 
-         private static bool IsCenterCenter(Vector2 minAnchor, Vector2 maxAnchor)
 
-         {
 
-             return minAnchor == s_Vector0Dot5And0Dot5 && maxAnchor == s_Vector0Dot5And0Dot5;
 
-         }
 
-         private static bool IsCenterBottom(Vector2 minAnchor, Vector2 maxAnchor)
 
-         {
 
-             return minAnchor == s_Vector0Dot5And0 && maxAnchor == s_Vector0Dot5And0;
 
-         }
 
-         private static bool IsRightTop(Vector2 minAnchor, Vector2 maxAnchor)
 
-         {
 
-             return minAnchor == s_Vector1And1 && maxAnchor == s_Vector1And1;
 
-         }
 
-         private static bool IsRightCenter(Vector2 minAnchor, Vector2 maxAnchor)
 
-         {
 
-             return minAnchor == s_Vector1And0Dot5 && maxAnchor == s_Vector1And0Dot5;
 
-         }
 
-         private static bool IsRightBottom(Vector2 minAnchor, Vector2 maxAnchor)
 
-         {
 
-             return minAnchor == s_Vector1And0 && maxAnchor == s_Vector1And0;
 
-         }
 
-         private static bool IsStretchTop(Vector2 minAnchor, Vector2 maxAnchor)
 
-         {
 
-             return minAnchor == s_Vector0And1 && maxAnchor == s_Vector1And1;
 
-         }
 
-         private static bool IsStretchMiddle(Vector2 minAnchor, Vector2 maxAnchor)
 
-         {
 
-             return minAnchor == s_Vector0And0Dot5 && maxAnchor == s_Vector1And0Dot5;
 
-         }
 
-         private static bool IsStretchBottom(Vector2 minAnchor, Vector2 maxAnchor)
 
-         {
 
-             return minAnchor == s_Vector0And0 && maxAnchor == s_Vector1And0;
 
-         }
 
-         private static bool IsStretchLeft(Vector2 minAnchor, Vector2 maxAnchor)
 
-         {
 
-             return minAnchor == s_Vector0And0 && maxAnchor == s_Vector0And1;
 
-         }
 
-         private static bool IsStretchCenter(Vector2 minAnchor, Vector2 maxAnchor)
 
-         {
 
-             return minAnchor == s_Vector0Dot5And0 && maxAnchor == s_Vector0Dot5And1;
 
-         }
 
-         private static bool IsStretchRight(Vector2 minAnchor, Vector2 maxAnchor)
 
-         {
 
-             return minAnchor == s_Vector1And0 && maxAnchor == s_Vector1And1;
 
-         }
 
-         private static bool IsStretchStrech(Vector2 minAnchor, Vector2 maxAnchor)
 
-         {
 
-             return minAnchor == s_Vector0And0 && maxAnchor == s_Vector1And1;
 
-         }
 
-         public static bool IsStretchPivot(RectTransform rt)
 
-         {
 
-             return IsStretchTop(rt.anchorMin, rt.anchorMax) ||
 
-                 IsStretchMiddle(rt.anchorMin, rt.anchorMax) ||
 
-                 IsStretchBottom(rt.anchorMin, rt.anchorMax) ||
 
-                 IsStretchLeft(rt.anchorMin, rt.anchorMax) ||
 
-                 IsStretchCenter(rt.anchorMin, rt.anchorMax) ||
 
-                 IsStretchRight(rt.anchorMin, rt.anchorMax) ||
 
-                 IsStretchStrech(rt.anchorMin, rt.anchorMax);
 
-         }
 
-         public static bool IsFixedWidthHeight(RectTransform rt)
 
-         {
 
-             return IsLeftTop(rt.anchorMin, rt.anchorMax) ||
 
-                 IsLeftCenter(rt.anchorMin, rt.anchorMax) ||
 
-                 IsLeftBottom(rt.anchorMin, rt.anchorMax) ||
 
-                 IsCenterTop(rt.anchorMin, rt.anchorMax) ||
 
-                 IsCenterCenter(rt.anchorMin, rt.anchorMax) ||
 
-                 IsCenterBottom(rt.anchorMin, rt.anchorMax) ||
 
-                 IsRightTop(rt.anchorMin, rt.anchorMax) ||
 
-                 IsRightCenter(rt.anchorMin, rt.anchorMax) ||
 
-                 IsRightBottom(rt.anchorMin, rt.anchorMax);
 
-         }
 
-     }
 
- }
 
 
  |