[cairo] Spirolaterals

Tavmjong Bah tavmjong at free.fr
Wed Oct 5 18:44:11 UTC 2016


On Wed, 2016-10-05 at 10:38 -0700, Bryce Harrington wrote:
> On Wed, Oct 05, 2016 at 07:35:16PM +1300, Lawrence D'Oliveiro wrote:
> > 
> > I’ve been enhancing my curve script
> > <https://lists.cairographics.org/archives/cairo/2016-May/027422.htm
> > l>
> > to draw spirolaterals
> > <http://www.mi.sanu.ac.rs/vismath/krawczyk/spdesc00.htm>. Has
> > anyone
> > else looked at these?
> No, but I have seen a lot of folks in Inkscape working on a lot of
> similar kinds of things.  The description of spirolaterals reminded
> me a
> lot of Inkscape's Tiled Clones functionality, which are basically
> rule-based methods of replicating a base shape with different
> rotations,
> transformations, etc.  However, I wasn't able to replicate a
> spirolateral with tile clones (admittedly maybe more due to my
> limited
> skills than limitation of the software).
> 
> Most likely if anyone's done anything with spirolaterals for Inkscape
> it'd be as an extension, which are basically command line scripts
> that
> take an SVG snippet and morph it according to parameters specified as
> command line arguments.  In poking around the closest I found was the
> Spirograph extension; have you played with that at all?  The code for
> the extension is at /usr/share/inkscape/extensions/spirograph.py if
> it
> looks at all interesting.

Inkscape's L-System extension might also be of interest:

http://tavmjong.free.fr/INKSCAPE/MANUAL/html/Extensions-Render.html#Ext
ensions-Lindenmayer

> > 
> > All the examples I have tried work fine--except for those with
> > reversing turns. My conclusion is that many of the examples shown
> > here
> > <http://www.mi.sanu.ac.rs/vismath/krawczyk/spdesc03.htm> are mixed
> > up
> > or just plain mislabelled. For example, in figure 6, the one
> > labelled
> > (substituting slashes for subscripts) “9/90/1,2,3,4” should
> > actually be
> > “9/90/1,2,3,9”, “9/90/2,3,4” should be “9/90/1,2,9” and
> > “9/90/2,3,4,5”
> > should actually be “9/90/1,2,3,4”.
> > 
> > If there were a bug in my code, then for example I wouldn’t get
> > “9/90/1,2,3” correct--the errors would be more systematic.
> Bryce


More information about the cairo mailing list