15 Sep 2004 haruspex   » (Journeyer)

raph, circle segments are indeed the primitive used by IKARUS, as I've mentioned here before. This is clear from the exposition in Dr Karow's book (op cit.) and the source code therein. Also, I relate them to METAFONT deliberately, as this was explicitly the ideal around which Hobby's Bezier generation was designed. Again, this is derived from the technical descriptions given in The METAFONTbook. Of course, I know METAFONT's underlying representation and rendering engine works with Beziers, but concerning the higher level user abstraction, I stand by what I have asserted. I understand where Hobby departs from pure circles. In fact METAFONT's overall approach seems to solve most of the difficulty.

circular arcs do not have this property. You need quite a few of them to closely fit an ellipse, say.
Yes, I agree with what you write here, but I am not sure it matters. The fact is, any geometrical figure - ellipse, circle, parabola - is irrelevant to the problem of fitting a natural, drawn curve. Pure geometric shapes (with the exception of straight lines) rarely occur in a letter outline, so I disregard them as modelling test cases. Instead, I ask, how well can this primitive deal with a pre-mathematical, natural curve, as might have come from the designer's hand? How awkward is the translation? (Your curve continuity arguments are relevant theoretical ammunition here I think, although my assessments are usually subjective, not objective.)

My counter-assertion would be, for a natural curve, Beziers are not necessarily better than circle segments and further that counting control points does not prove this either way. My gut tells me that Beziers are excellent for rendering purposes but horrible for curve modelling. I certainly see advantages for Cornu over both these representations, and you've given some interesting reasons.

I have studied many IKARUS markups and not found them excessively overspecified. (It would be nice to hear from an IKARUS veteran on this.) One very intriguing thing about IKARUS is that most markups I've seen were made by non-technical draughtsmen, usually type designers themselves - Zapf, Frutiger, Spiekermann. Whereas no-one can do good Bezier drawings without a lot of training - and such drudgery would waste the time of a designer of this calibre. It took me a few years to learn how to "trick" Beziers into looking natural - and it's always a compromise.

In sum, my subjective assessments generally lead me to feel that IKARUS splines - or let's say, a mechanical spline and ducks - are quite natural to the draftsman and designer; and Beziers could not be more artificial and difficult.

We are coming at this from different angles, however. You're the mathematician, and I am just a typographer who isn't happy with the compromises that plague digital type.

Latest blog entries     Older blog entries

New Advogato Features

New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.

Keep up with the latest Advogato features by reading the Advogato status blog.

If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!