def path.apply

gralha-svg-render@0.1.0.1 · svg.bend:423

import gralha-svg-render@0.1.0.1/svg.bend as Svg
import Base

423def path.apply(+p: Path, +cmd: U32, c: U32, vs: List<&2, F32>) -> Path:
424  match c:
425    case 77:
426      match vs:
427        case Con{x, Con{y, r}}:
428          path.move(p, relative(cmd, path.cursor(p), Point{x, y}), cmd)
429        case _: p
430    case 76:
431      match vs:
432        case Con{x, Con{y, r}}:
433          path.line(p, relative(cmd, path.cursor(p), Point{x, y}), cmd)
434        case _: p
435    case 72:
436      match vs:
437        case Con{x, r}:
438          path.line(p, path.h(path.cursor(p), x, cmd), cmd)
439        case _: p
440    case 86:
441      match vs:
442        case Con{y, r}:
443          path.line(p, path.v(path.cursor(p), y, cmd), cmd)
444        case _: p
445    case 67:
446      match vs:
447        case Con{x1, Con{y1, Con{x2, Con{y2, Con{x, Con{y, r}}}}}}:
448          path.cubic(p, relative(cmd, path.cursor(p), Point{x1, y1}), relative(cmd, path.cursor(p), Point{x2, y2}), relative(cmd, path.cursor(p), Point{x, y}), cmd)
449        case _: p
450    case 83:
451      match vs:
452        case Con{x2, Con{y2, Con{x, Con{y, r}}}}:
453          path.cubic(p, path.smooth(p, 67, 83), relative(cmd, path.cursor(p), Point{x2, y2}), relative(cmd, path.cursor(p), Point{x, y}), cmd)
454        case _: p
455    case 81:
456      match vs:
457        case Con{x1, Con{y1, Con{x, Con{y, r}}}}:
458          path.quad(p, relative(cmd, path.cursor(p), Point{x1, y1}), relative(cmd, path.cursor(p), Point{x, y}), cmd)
459        case _: p
460    case 84:
461      match vs:
462        case Con{x, Con{y, r}}:
463          path.quad(p, path.smooth(p, 81, 84), relative(cmd, path.cursor(p), Point{x, y}), cmd)
464        case _: p
465    case 65:
466      match vs:
467        case Con{rx, Con{ry, Con{rot, Con{large, Con{sweep, Con{x, Con{y, r}}}}}}}:
468          path.arc(p, relative(cmd, path.cursor(p), Point{x, y}), cmd, rx, ry, rot, large, sweep)
469        case _: p
470    case _: p

Uses (18)

Used by (1)