Very cool demo, The curve does sort of go screwball when the control points are close together.
After playing with it some more. Not close together, but more side loaded. On reflection while many of these forms would be awkward to find in a drawing program, I think this is the source of the superior spiral the author likes.
It can’t do a loop (or a cusp, in the limit) like cubic Beziers can, and may instead "lock" to a weird hook-like shape, I’m not sure whether it’s just an artifact of the way the demo tries to match the curve to a Bezier.
Loops and cusps are of course not very useful in 2D graphic or typeface design, and even if you’re animating a plane or designing a rollercoaster you’d probably use more than one Bezier to make up a looping shape.
As a clarification, the hyperbezier curve can do a loop, but I deliberately chose not to make that accessible in the parameter mapping. I couldn't figure out how to do it with any reasonable continuity. It's possible to flip from the normal shape to the loop, but I wanted to avoid that. And if you don't flip, then all trajectories have to go through an exact corner as an intermediate, which is very different behavior than the cubic Bézier. In the Bézier, the cusp can occur anywhere along the curve, but to make the corner shape it has to be exactly at the intersection of the endpoint tangents.
There are other Bézier shapes that the hyperbezier can't match, including two cusps on the interior. As you say, I consider these not very useful in actual 2D design, and am happy to give them up for smoother curves and the increased range of superellipse shapes.
Comments
Very cool demo, The curve does sort of go screwball when the control points are close together.
After playing with it some more. Not close together, but more side loaded. On reflection while many of these forms would be awkward to find in a drawing program, I think this is the source of the superior spiral the author likes.
It can’t do a loop (or a cusp, in the limit) like cubic Beziers can, and may instead "lock" to a weird hook-like shape, I’m not sure whether it’s just an artifact of the way the demo tries to match the curve to a Bezier.
Loops and cusps are of course not very useful in 2D graphic or typeface design, and even if you’re animating a plane or designing a rollercoaster you’d probably use more than one Bezier to make up a looping shape.
As a clarification, the hyperbezier curve can do a loop, but I deliberately chose not to make that accessible in the parameter mapping. I couldn't figure out how to do it with any reasonable continuity. It's possible to flip from the normal shape to the loop, but I wanted to avoid that. And if you don't flip, then all trajectories have to go through an exact corner as an intermediate, which is very different behavior than the cubic Bézier. In the Bézier, the cusp can occur anywhere along the curve, but to make the corner shape it has to be exactly at the intersection of the endpoint tangents.
There are other Bézier shapes that the hyperbezier can't match, including two cusps on the interior. As you say, I consider these not very useful in actual 2D design, and am happy to give them up for smoother curves and the increased range of superellipse shapes.