public static Box GetModelSpaceBox(this SpriteRenderer spriteRenderer)
        {
            Sprite sprite = spriteRenderer.sprite;

            if (sprite == null)
            {
                return(Box.GetInvalid());
            }

            List <Vector2> spriteVerts = new List <Vector2>(sprite.vertices);

            return(Vector2Extensions.GetBoxFromPointCloud(spriteVerts));
        }
        public static Box GetModelSpaceBox(this SpriteRenderer spriteRenderer)
        {
            Sprite sprite = spriteRenderer.sprite;

            if (sprite == null)
            {
                return(Box.GetInvalid());
            }

            #if !UNITY_5
            Vector3 modelSpaceCenter = spriteRenderer.transform.InverseTransformPoint(spriteRenderer.bounds.center);
            modelSpaceCenter.z = 0.0f;
            return(new Box(modelSpaceCenter, sprite.rect.size / sprite.pixelsPerUnit));
            #else
            List <Vector2> spriteVerts = new List <Vector2>(sprite.vertices);
            return(Vector2Extensions.GetBoxFromPointCloud(spriteVerts));
            #endif
        }