Upgrading the Bézier Curve: A New Editing Paradigm

Curvature Beziers

Upgrading the Bézier Curve: A New Editing Paradigm

Bézier curves have been a staple of CAD and computer graphics for decades, but their editing tools are based on a misconception about smoothness. This article demonstrates that symmetric tangents don't guarantee curvature continuity and proposes a new approach: working directly with curvature handles. By solving a system of equations, the author derives a method to convert desired curvatures into Bézier control points, enabling more intuitive and stable curve editing. The technique handles corner points and multiple solutions gracefully, offering a significant improvement over traditional pen tools.

In reality this is completely wrong, and this is easy to demonstrate.
  1. lioeters

    As another comment mentioned, Raph Levien has a few words to say on the topic of improving Bezier curves.

    Simplifying Bézier paths (2023) https://raphlinus.github.io/curves/2023/04/18/bezpath-simpli...

    Parallel curves of cubic Béziers (2022) https://raphlinus.github.io/curves/2022/09/09/parallel-bezie...

    Fitting cubic Bézier curves (2021) https://raphlinus.github.io/curves/2021/03/11/bezier-fitting...

  2. adamschwartz

    What an amazing resource.

    I’ve been building a vector editor that by default draws shapes with smooth curvature and shows the comb. [1] In addition to the four point types mentioned in the article, you get a new “curve” point type. I’ve also been making a font editor with the same drawing capability. [2]

    Both are free static web apps that use local storage and have import/export capability for SVG files (and OTF files for the font editor).

    [1] https://svg.a10z.co/editor

    [2] https://svg.a10z.co/font

  3. peter_d_sherman

    >"The linear interpolations (aka lerps) can be summarized into a single compact formula, e.g. for 4 control points (A,B,C,D):

    γ(t)=A⋅(1−t)^3+B⋅3(1−t)^2⋅t+C⋅3(1−t)t^2+D⋅t^3

    The rule is simple: descending powers of (1−t), ascending powers of t, with coefficients taken from the n'th row of Pascal's triangle.

    I've never seen the connection between the equation for Bezier Curves (more specifically the linear equations of curves with N control points aka "binding points" / "points of stability" / "fixed points" / "immovable points", etc.) and Pascal's Triangle before!

    Brilliant!

    Great article, too!

More from this day

2026-08-28