def paint.pixel

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

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

5320# The general pixel: brush sampled or solid, coverage limited by the clips; a
5321# known block limit (0 or more) replaces the per-pixel clip reads.
5322def paint.pixel(fb: Array<U32>, +x: U32, +y: U32, +v: F32, +known: F32, +t: Target, +ctx: PaintCtx) -> Array<U32>:
5323  +p = {Point{(U32.to_f32(x) + 0.5 : F32), (U32.to_f32(y) + 0.5 : F32)} : Point}
5324  blend(fb, target.index(t, x, y), pixel.pack(paint.color(paint.ctx.solid(ctx), ctx, p), U.min(v, U.choose(F32, F32.is_lt(known, 0.0), paint.limit(paint.ctx.clips(ctx), p, 1.0), known))))
5325
5326@unsafe

Uses (18)

Used by (1)