[chiplotle-discuss] Superformula for Supershapes
douglas repetto
douglas at music.columbia.edu
Sun Mar 14 16:11:23 EDT 2010
Cool!
These new compound commands makes me wonder whether we should look at
some existing general purpose vector drawing packages to see whether we
can use them instead of reimplementing everything from scratch. If we're
going to have a few standard vector methods, it would make sense to
figure out how to have a large library of them.
Victor and I have already talked about expanding Chiplotle to more
general purpose control of CNC machines -- gcode for cnc mills, for
example. So there's a kind of tension between Chiplotle as a simple
wrapper for hpgl files/commands, Chiplotle as a simple wrapper for
generic vector-based machine control, and Chiplotle as a general purpose
drawing language.
I've seen various projects recently, for example, where people have used
Processing to generate drawings and send them to plotters.
Since Chiplotle is Python-based, maybe we should start looking at
existing Python vector graphics packages to see how we can interface
with them? I tried something like that in my camera->plotter project:
http://music.columbia.edu/~douglas/strange_things/?p=343
But I couldn't get it to all work in Python, I ended up using several
external command line programs.
Just thinking out loud.
douglas
On 3/14/10 3:48 PM, architetto francesco fantoni <hva - hermanitos
verdes architetti> wrote:
> I've committed to the repo a new class:
>
> Supershape, it uses the 'superformula', a generalization of
> superellipses first proposed by Johan Gielis.
> It can be used to make nice shapes often found in nature.
> see this:
> http://en.wikipedia.org/wiki/Johan_Gielis
>
> the compound command is:
> Supershape(xy, width, height, m, n1, n2, n3, points=1000,
> percentage=1.0, range=None)
>
> width and height, well, are width and height
> m, n1, n2, n3 are the parameters tha control the curve
> points is the number of points we use (less is less accurate)
> percentage (0.0-1.0) is how many of this points we use (0.5 will draw
> half of the curve)
> range is the angle we cover with the curve, default is 2*pi for a closed
> curve.
>
> for example you could try something like:
> s = Supershape((0,0), 1000, 1000, 1, 0.5, 0.5, 0.5)
> that draws a drop-like shape, or
> s = Supershape((0,0), 1000, 1000, 8, 0.5, 0.5, 8)
> for some sort of cloverleaf
>
> best,
> francesco
>
> _______________________________________________
> chiplotle-discuss mailing list
> chiplotle-discuss at music.columbia.edu
> http://music.columbia.edu/mailman/listinfo/chiplotle-discuss
>
--
............................................... http://artbots.org
.....douglas.....irving........................ http://dorkbot.org
.......................... http://music.columbia.edu/cmc/music-dsp
.......... repetto............. http://music.columbia.edu/organism
............................... http://music.columbia.edu/~douglas
More information about the chiplotle-discuss
mailing list