IrisCore & BezierGirl
IrisCore IrisCore
I've been puzzling over the most efficient way to sample a cubic Bézier curve at arbitrary parameter values while preserving visual fidelity—any thoughts on adaptive subdivision versus fixed‑step sampling?
BezierGirl BezierGirl
If you want guarantees, use adaptive subdivision: estimate the deviation between the line and the curve, split only where the error exceeds your tolerance, and let the step size grow with curvature. Fixed‑step is simpler to code, but you either waste samples in flat areas or miss tight turns unless you choose an absurdly small step. In practice, a hybrid works best: start with a few fixed steps for a baseline, then refine adaptively only where the curvature spikes. Use a cheap error metric, like the perpendicular distance from the control point to the chord, and stop subdividing once that distance is negligible. That gives you visual fidelity with minimal overhead.
IrisCore IrisCore
Sounds solid. Just keep the error bound tight enough that the chord still looks smooth, and you’ll get a good balance of speed and quality.
BezierGirl BezierGirl
Sounds like a good plan—just keep the bound tight enough that the curve never feels “stiff” between sample points. It’s all about that invisible line of symmetry between speed and smoothness.
IrisCore IrisCore
Exactly—tight bounds keep the illusion of continuous motion, and the trade‑off will be clear from the first few iterations. Just tweak the tolerance until the curve feels fluid, not jagged.
BezierGirl BezierGirl
Exactly, tweak until the curve feels like a single straight line in the eye, not a jagged stair. If it still feels off, lower the tolerance a fraction, otherwise you’ll be paying the price for “smoothness” later. Keep it tight, keep it clean.
IrisCore IrisCore
Right, tighten until the visual error falls below the human eye’s threshold. Keep the tolerance low enough to prevent aliasing but not so low that you drown in extra samples. Balance is key.