Пример #1
0
        public override Path getInnerPath(Rect rect, TextDirection?textDirection = null)
        {
            var path = new Path();

            path.addRRect(borderRadius.resolve(textDirection).toRRect(rect).deflate(side.width));
            return(path);
        }
Пример #2
0
        BorderRadius _adjustBorderRadius(Rect rect, TextDirection?textDirection)
        {
            BorderRadius resolvedRadius = borderRadius.resolve(textDirection);

            if (circleness == 0.0f)
            {
                return(resolvedRadius);
            }

            return(BorderRadius.lerp(resolvedRadius, BorderRadius.circular(rect.shortestSide / 2.0f), circleness));
        }
Пример #3
0
        public override Path getClipPath(Rect rect, TextDirection textDirection)
        {
            Path clipPath = null;

            switch (shape)
            {
            case BoxShape.circle:
                clipPath = new Path();
                clipPath.addOval(rect);
                break;

            case BoxShape.rectangle:
                if (borderRadius != null)
                {
                    clipPath = new Path();
                    clipPath.addRRect(borderRadius.resolve(textDirection).toRRect(rect));
                }

                break;
            }
            return(clipPath);
        }
Пример #4
0
 public override Path getInnerPath(Rect rect, TextDirection?textDirection = null)
 {
     return(_getPath(borderRadius.resolve(textDirection).toRRect(rect).deflate(side.width)));
 }