ANN: Displacement Scaling of graphic objects
Jim Hurley
jhurley at infostations.com
Thu Mar 16 09:43:36 EST 2006
>
>Jim Hurley wrote:
>
>> In the message box:
>>
>> go url "http://home.infostations.net/jhurley/ScaleMe3.rev"
>
>Oh my. To those of us who are math-impaired, this is astounding.
>
>It is also funny you should post this right now, because just two days
>ago I was thinking how I would like to write a fractal generator, only I
>don't have the math to do it. I still don't. But if I did, I bet I could. ;)
>
>--
>Jacqueline Landman Gay | jacque at hyperactivesw.com
>HyperActive Software | http://www.hyperactivesw.com
>
Thanks to all for your kind words. We all bring special backgrounds
to this tool which we share. Personally, I never got over the joy I
found in my high school geometry class.
But I too am astounded by all the rest of you, with your sockets, and
your cgi, and your HMAC/SHA1, and all the rest of the mysteries of
programming.
But Jacque, I know you can do fractals with your math tied behind
your back. The beauty of Turtle Graphics is that all the analytical
stuff is done for you. The rest is a little geometry using such
commands as: Forward, Back, Right, Left, to handle the local
geometry, and setXY, incXY to deal with the coordinate stuff. It is
amazing what you can do with this tool. There are books, written by
MIT math professors, using TG to do special relativity.
To do the snowflake all the geometry you need is to recognize that:
on drawSide L
forward L
left 60
forward L
right 120
forward L
left 60
forward L
end drawSide
will draw a four segment line with a angular (60 degree) bump in the middle.
The hard part, at least it's hard for me, is to recognize that the
recursive version of this is:
on drawSide L
if L > 3 then --Three is a measure of the smallest fractal
segment to be considered.
divide L by 3 -- Or whatever
drawSide L
left 60
drawSide L
right 120
drawSide L
left 60
drawSide L
else
forward L
end if
end drawSide
And that takes a while to see. You would probably be better at that
than I am. My mind doesn't work recursively.
The "stopTurtle" stack is an interpreter I wrote in Transcript to
implement TG. To check it out, in the msg box, run:
go url "http://home.infostations.net/jhurley/StopTurtles.rev"
It includes a TG dictionary and a few examples.
Jim
More information about the use-livecode
mailing list