Here is a different take on the same problem:
paste in a workspace select and do:
======>>
"Something to use to show results:"
arrow := [ :verticesCollection | (PolygonMorph arrowPrototype setVertices: verticesCollection ) openCenteredInWorld ] . " len was the number of steps. Which means rotations should actually be len / ppr. I just left it a whole number for simplicity"
rotations := 5 . ppr := 10.
"What I couldn't resist is pointing out how deadly simple squeak can make things. You just need to think thru to the next iteration of the problem.'"
spiralVertices := (0 to: rotations * Float twoPi by: Float twoPi / ppr ) collect: [ :each | Point r: 0.15 * each sqrt degrees: each radiansToDegrees ] .
arrow value: spiralVertices * 50 .
==========
Then play with the details.
Yours in curiosity and service, --Jerome Peace
__________________________________________________ Do You Yahoo!? Tired of spam? Yahoo! Mail has the best spam protection around http://mail.yahoo.com
squeak-dev@lists.squeakfoundation.org