I have begun experimenting with Inkscape's "spiro" mode for curves. Since I usually end up writing Python to create art that Inkscape just doesn't have the tools to accomplish, I'm curious what the math behind the "spiro" curves is.

What formulas does Inkscape use to choose the Bézier handle points for Spiro paths?

  • 7
    Spiros are the result of Raph Levien’s PhD thesis, which devotes an entire chapter to conversion to Bézier curves. I may summarise the respective parts in an answer if I find the time, but I won’t be angry, if anybody does so before me. – Wrzlprmft Aug 11 '16 at 15:12
  • 1
    By the way as a question this is better suited for computergraphics.SE – joojaa Aug 11 '16 at 19:45
  • I've been trying to get a grip on the PhD thesis. One thing that has not yet become clear is how inkscape constrains the curves that travel through multiple points. My first guess would be that it constrains the curvature to be continuous, but I can not yet rule out additional constraints. – Mutant Bob Aug 12 '16 at 16:01
  • What's wrong with proper quote marks? – Cai Aug 13 '16 at 16:49
  • It might be that inkscape is using Levien's spiro library (C and Java versions available) libspiro.sourceforge.net – Mutant Bob Aug 18 '16 at 21:41

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.