I would like to use OmniGraffle as a GUI, whereby the user uses Graffle to draw a series of curves (i.e. curved arrows).

After I collect the point coordinates used to generate a given curve, I would like to use that information to, for example, calculate the length of a curve, coordinates of points along the curve, radius of curvature at points along the curve, etc. To do this I would like to know precisely how Graffle generates these curves.

Nearly all Bezier algorithms employ control points (handles) in addition to the interpolating points. Does anyone know how Graffle draws the curves using only interpolating points?

Thanks in advance.

-Dylan

After I collect the point coordinates used to generate a given curve, I would like to use that information to, for example, calculate the length of a curve, coordinates of points along the curve, radius of curvature at points along the curve, etc. To do this I would like to know precisely how Graffle generates these curves.

Nearly all Bezier algorithms employ control points (handles) in addition to the interpolating points. Does anyone know how Graffle draws the curves using only interpolating points?

Thanks in advance.

-Dylan