4 ms·
Are there any creative tools that would make use of quadratic Bezier curves? While cubic Beziers are easier to tweak, it is much easier to draw smooth shapes wi
by jarek-foksa 12y ago
Are there any creative tools that would make use of quadratic Bezier curves? While cubic Beziers are easier to tweak, it is much easier to draw smooth shapes with quadratic Beziers. They seem to be also easier to implement (only one control point), not sure why major vector and pixel graphics editors don't support them.
Ideally I would prefer to have an option to draw paths with either quadratic or cubic Bezier segments, but edit paths normalised to cubic Bezier segments.
- dtf 12y agoMost fonts are created with quadratic Bezier curves, I think.
- TheRealPomax 12y agoOnly OpenType with TrueType outlines (the common .ttf file) do - lines and quadratic curves is all you get. OpenType fonts with CFF/Type2 outlines (the equally common .otf files) use cubic curves instead, with an insanely rich instruction language for much better shape control.
- TheRealPomax 12y agoQuadratic curves get very "pointy" with increased curvature, so you're trading "easy to draw a single smooth curve" (fairly meaningless in vector work) for "a genuine hassle to line up the consecutive curves that you'll need for more complex curve shapes" (pretty much the meat of vector work). Of course, I say "complex" but and those aren't actually all that complex at all: you'll already need two quadratic curves just for a quarter circle (and by extension any quarter ellipse), for instance. While it sounds appealing, once you can actually draw quadratic curves you end up needing so many of them that refining your shapes (which takes up the majority of time for curve work if you're playing human data processor) becomes an incredibly hard job. The most obvious example of a common technology that uses quadratics is OpenType fonts with TrueType outlines, which only uses straight lines and quadratic Bezier curves, although most tools I know of will give you cubics there, too, and simply save to a correct quadratic representation upon export/font generation. Outside of those, you can use visual programming languages like Processing for your own purposes if you absolutely need them.
- mistercow 12y agoI used quadratic curves to render strokes in TabletDraw, although that's not user level. Another advantage of quadratic curves is that they can be converted to a parabolic function plus a rotation. That opens the door for all sorts of optimization that is much harder with cubic bezier curves, which are not guaranteed to be functions.
- TheRealPomax 12y agoNot entirely true, but not entirely false either: the quadratic has degenerate cases where it can't be represented by a single quadratic polynomial, and regardless of the order, each dimension in a nth order Bezier curve is guaranteed to be a plain old nth order polynomial function. Most properties for the cubic curve as a whole come from evaluating each dimension independently, which still allows for a fair number of optimizations, and we can classify cubics in a few canonical forms that let us do even more optimizations ("a geometric characterization of parametric cubic curves" by Stone and DeRose is a good read on that) So a cautionary note: finding the angle necessary to turn a quadratic curve into a parabola (for unbalanced curves) can cost as much as using an optimized canonical cubic, where the user's input only defines the linear transform that you throw at the graphics context to make sure the curve you then draw matches the curve the user expected.
- deleted 12y ago[deleted]