def lines.bounds

gralha-coverage@0.1.0.1 · cover.bend:1131

import gralha-coverage@0.1.0.1/cover.bend as Cover
import Base
import gralha-text-scan@0.1.0.1/scan.bend as U

1131def lines.bounds(xs: List<&2, CovLine>, +x0: F32, +y0: F32, +x1: F32, +y1: F32) -> CovBox:
1132  match xs:
1133    case Nil{}: CovBox{x0, y0, x1, y1}
1134    case Con{CovLine{ax, ay, bx, by}, rest}:
1135      +byDup = by
1136      +bxDup = bx
1137      +ayDup = ay
1138      +axDup = ax
1139      +lx = U.min(axDup, bxDup)
1140      +ly = U.min(ayDup, byDup)
1141      +hx = U.max(axDup, bxDup)
1142      +hy = U.max(ayDup, byDup)
1143      lines.bounds(rest, U.min(x0, lx), U.min(y0, ly), U.max(x1, hx), U.max(y1, hy))

Uses (6)

Used by (2)