buildPath method

Path buildPath(
  1. ShapeEntity shape
)

Implementation

Path buildPath(ShapeEntity shape) {
  final path = Path();
  if (shape.type == ShapeEntityType.SHAPE) {
    final args = shape.shape;
    final argD = args.d;
    return buildDPath(argD, path: path);
  } else if (shape.type == ShapeEntityType.ELLIPSE) {
    final args = shape.ellipse;
    final xv = args.x;
    final yv = args.y;
    final rxv = args.radiusX;
    final ryv = args.radiusY;
    final rect = Rect.fromLTWH(xv - rxv, yv - ryv, rxv * 2, ryv * 2);
    if (!rect.isEmpty) path.addOval(rect);
  } else if (shape.type == ShapeEntityType.RECT) {
    final args = shape.rect;
    final xv = args.x;
    final yv = args.y;
    final wv = args.width;
    final hv = args.height;
    final crv = args.cornerRadius;
    final rrect = RRect.fromRectAndRadius(
        Rect.fromLTWH(xv, yv, wv, hv), Radius.circular(crv));
    if (!rrect.isEmpty) path.addRRect(rrect);
  }
  return path;
}