How to Choose Between Bézier and B-Spline Curves for Local Shape Adjustments
Choose a segmented Bézier path when you want direct control over a virtual character’s outline landmarks and tangent directions. Choose a B-spline when you want to reshape a continuous contour through controls with bounded influence. The decisive question is how far an edit reaches—and whether that reach fits the feature you want to change.
This guide focuses on refining a virtual character’s silhouette in an external curve editor: adjusting an ear, cheek, or tail while preserving the surrounding outline. The recommendations below translate curve properties into an editing decision, rather than assuming either curve type is always more local.
What does “local adjustment” mean for your character outline?
Before choosing a curve, name both the intended change and the boundary it must respect. “Make the cheek rounder while keeping the ear base and chin fixed” is a useful specification. “Improve the outline” leaves too much undecided.
There are two scales of locality. Mathematical locality describes which part of a curve can respond to a control point. Practical locality asks whether that affected region fits your character feature. A mathematically local edit can still reach beyond a small cheek into neighboring features.
A single Bézier segment has global control within that segment: moving one control point changes its shape across the segment’s interior. B-splines provide local modification, with a control point affecting a bounded parameter interval. Michigan Technological University’s original teaching material demonstrates this distinction in Modifying Control Points.
For your drawing, turn that distinction into a simple requirement: identify the contour section allowed to move, then check whether the selected control’s influence remains inside it.
Why can a segmented Bézier path still work well for local edits?
The statement “Bézier curves lack local control” needs a qualification: it describes an individual Bézier segment. A character outline can consist of multiple segments. Editing a control belonging to one segment need not change distant segments, provided shared anchors and editor constraints remain unchanged.
If one long segment covers the cheek and much of the head, its editing reach may be too broad. Subdivision can replace it with smaller Bézier segments that reproduce the original shape. You can then work on the relevant piece. The subdivision process and its use in isolating an unsatisfactory region are explained in Subdividing a Bézier Curve.
For character work, this makes Bézier a strong starting choice when you can place useful boundaries around features. Keep an anchor at the ear base, another near the cheek transition, and adjust the intervening segment. Treat those placements as design decisions; adding anchors everywhere makes the outline harder to reason about.
A shared anchor requires particular care. Moving it changes the meeting point of adjacent segments. Even with the anchor fixed, coupled handles may alter the neighboring segment when you adjust the selected side.
When does a B-spline give better control over a flowing contour?
A B-spline separates its degree from its number of control points. You can therefore describe a long contour with many controls while keeping a low polynomial degree. Its knot vector divides the parameter domain into spans and helps determine each control’s influence. These properties are documented in B-spline Curves: Important Properties.
For a control point indexed by i and a curve of degree p, the affected interval is bounded by knots uᵢ and uᵢ₊ₚ₊₁. For a cubic B-spline, that covers at most four nonzero knot spans. Those spans are parameter intervals, so they need not correspond to equal distances along the visible outline. The support rule is derived in B-spline Curves: Moving Control Points.
Consider this illustrative example: a cubic curve has knot vector 0, 0, 0, 0, 1, 2, 3, 4, 5, 5, 5, 5. Moving control point P₃, using zero-based indexing, can affect the curve between parameter values 0 and 4. That is bounded influence, but it covers four of the five nonzero spans. A small curve can therefore have edits that feel surprisingly broad.
Choose B-spline controls when their influence already fits the flowing section you want to reshape, such as a long tail contour. If each adjustment also disturbs a nearby feature you intended to preserve, refine the representation before continuing.
How should smooth joins and deliberate corners affect the choice?
For a segmented Bézier outline, inspect the handles on both sides of every edited join. Bézier endpoint tangents follow the first and last edges of the control polygon. At a regular join, collinear handles extending on opposite sides of the shared anchor can provide matching tangent directions, called G1 continuity. Matching first derivatives, or C1 continuity, imposes an additional relationship between handle lengths and segment degrees. See Derivatives of a Bézier Curve.
For a stationary character silhouette, start by checking the visible transition: does the cheek flow into the head, or does it kink? Tangent alignment is useful, but it does not by itself ensure that curvature changes evenly across the join.
Editor settings also matter. Inkscape’s guide distinguishes cusp nodes with independent handles, smooth nodes with aligned handles, symmetric nodes with aligned equal-length handles, and auto-smooth nodes whose handles adapt automatically. These behaviors explain why an apparently isolated edit can affect the opposite side of a node. See About Node Types.
B-spline smoothness depends on degree and knot multiplicity. A cubic spline with simple interior knots has C2 continuity; repeated knots reduce the continuity required at that location. Consequently, “B-spline” alone does not specify how smooth every join will be. The relationship is explained in B-spline Curves: Important Properties.
For a deliberately pointed ear, a Bézier corner with independently controlled sides is an accessible option. For an uninterrupted rounded outline, consider a B-spline if its knot and control structure lets you shape the whole transition conveniently.
How can you add finer control without changing the starting shape?
Refine first, reshape second. Separating these operations lets you see whether an unexpected change came from adding controls or from moving them.
For Bézier curves, use shape-preserving subdivision at an appropriate location. The resulting pieces retain the original degree and together reproduce the starting segment. After subdivision, preserve boundary anchors and tangent relationships wherever the surrounding silhouette must stay fixed. Subdividing a Bézier Curve describes this construction.
For B-splines, use proper knot insertion when your editor exposes it. Knot insertion adds a knot and recalculates the relevant control points without changing the curve’s geometry. Simply adding an arbitrary point to the control polygon is a different operation. The distinction and construction appear in B-spline Curves: Knot Insertion.
After either operation, compare the refined outline against a saved copy before making your shape adjustment. Then move one control at a time. Add further detail only when the current representation cannot achieve the intended feature within your chosen boundary.
Which curve should you choose for your next character edit?
Use this decision aid after identifying the area allowed to move. These are practical recommendations derived from the properties above, rather than measured comparisons between applications.
| Editing requirement | Starting choice | What to verify |
|---|---|---|
| Adjust one feature between fixed landmarks | Segmented Bézier | Segment boundaries fit the feature; shared handles behave as intended |
| Reshape a long, flowing contour repeatedly | B-spline | Control influence fits the intended region |
| Create a deliberate point or corner | Bézier with independent handles | Both sides retain the intended direction |
| Refine an already satisfactory Bézier outline | Keep Bézier and subdivide where needed | Subdivision preserves the starting silhouette |
| Make a B-spline adjustment more narrowly targeted | Keep B-spline and insert knots where supported | Insertion preserves geometry before controls move |
An existing outline deserves priority in the decision. If its curve type already supports the required edit, refine it in place. Switching representations adds another operation to evaluate and may provide little benefit for a single cheek or ear adjustment.
How do you test whether the choice is working?
Use an edit-boundary test on a duplicate of the character outline. This gives you a concrete way to compare representations without relying on their labels.
- Specify the change. For example, widen the cheek while preserving the ear base and chin.
- Mark the permitted region. Identify two visible boundary locations around the feature.
- Inspect the representation. Find the Bézier segments or B-spline controls that influence this section.
- Make one small edit. Observe both the target feature and the neighboring contour.
- Check the boundary. If the change extends beyond it, inspect handle coupling or refine the curve before trying again.
- Inspect the result at working and display sizes. Check the feature’s shape, its transitions, and whether the adjustment remains visible at the intended size.
For a cheek isolated between useful Bézier anchors, adjusting a handle may complete the task with little restructuring. For a flowing contour that needs many neighboring adjustments, B-spline controls may offer a more convenient editing pattern. Let the permitted edit region guide the choice: keep the representation that gives you enough control to shape the feature while preserving the outline you already like.
Sources
- Modifying Control Points — Michigan Technological University
- Subdividing a Bézier Curve — Michigan Technological University
- B-spline Curves: Important Properties — Michigan Technological University
- B-spline Curves: Moving Control Points — Michigan Technological University
- Derivatives of a Bézier Curve — Michigan Technological University
- About Node Types — Inkscape Beginners’ Guide
- B-spline Curves: Knot Insertion — Michigan Technological University
