mirror of
https://github.com/storytold/vectorcraft.git
synced 2026-10-24 09:46:59 -06:00
Review follow-up. A function-based shading is read once per import (kept per shading pattern and inks), and all of them draw on one budget of 200,000 function evaluations; past it a shading comes in as its average colour, then flat grey, each with a warning that names the cause. A gradient read leaves enough of the budget to average another shading. A colour that changes in step with the sampling grid is checked across the middle of the domain before an axis is chosen, so it isn't read along the wrong one. The grey fallback warning for other shadings names only them. Tests: the same shading on 2,000 paths is read once; 40 distinct shadings stay within the budget; a hostile file (5,000 fills, 20 shadings with 500-step functions) opens in 0.8 s, 253 s before. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>