def prepare.effect
gralha-svg-render@0.1.0.1 · svg.bend:5065
import gralha-svg-render@0.1.0.1/svg.bend as Svg
import Base
5065def prepare.effect(effect: FilterEffect, +scene: Scene<Brush>, space: Matrix, aa: U32) -> Scene<Brush>:
5066 match effect:
5067 case NoFilter{}: scene
5068 case FilterImage{raster}: scene
5069 case FilterSpec{region, units, viewport, attrs, primitives}:
5070 +box = region
5071 +mat = units
5072 +buffer = filter.render(scene, box, mat, viewport, primitives, space, aa)
5073 filter.cache(scene, buffer, bounds.expand(bounds.transform(box, mat), raster.scale(buffer)))