mirror of
https://github.com/visioncortex/vtracer.git
synced 2026-09-11 06:38:42 -07:00
df94675494
A stateful, image-owning converter for the desktop tuning loop. The consumer calls render / render_svg / render_with_progress with a fresh Config each frame and never reasons about cachability: Session compares the Config's SegmentKey (its clustering-relevant projection — color mode, color precision, layer difference, speckle, binary threshold settings) to what it last clustered and re-segments only when that changes. Everything else — fit mode, curve params, compositing, palette, optimization — reuses the cached Segmentation. Config::segment_key is public too, so callers that hold their own state (e.g. the wasm/JS side) can compare keys with the same source of truth. Tests cover the key partition (finish-phase params share a key; clustering params change it) and that Session output matches the one-shot pipeline for both a reused-segmentation render and a re-segmented one. Add desktop app screenshot referenced by the README Condense the unreleased changelog notes