static bool WithinRange(ShapeAngleRange angleRange, float inputAngle)
        {
            float range = angleRange.end - angleRange.start;
            float angle = Mathf.Repeat(inputAngle - angleRange.start, 360f);

            angle = (angle == 360.0f) ? 0 : angle;
            return(angle >= 0f && angle <= range);
        }
        private List <ShapeAngleRange> GetAngleRangeSorted(SpriteShape ss)
        {
            List <ShapeAngleRange> angleRanges = new List <ShapeAngleRange>();
            int i = 0;

            foreach (var angleRange in ss.angleRanges)
            {
                ShapeAngleRange sar = new ShapeAngleRange()
                {
                    start = angleRange.start, end = angleRange.end, order = angleRange.order, index = i
                };
                angleRanges.Add(sar);
                i++;
            }
            angleRanges.Sort((a, b) => a.order.CompareTo(b.order));
            return(angleRanges);
        }