Turtle graphics

related topics
{math, number, function}
{system, computer, user}
{math, energy, light}
{specie, animal, plant}
{@card@, make, design}
{theory, work, human}
{ship, engine, design}
{school, student, university}
{style, bgcolor, rowspan}

Turtle graphics is a term in computer graphics for a method of programming vector graphics using a relative cursor (the "turtle") upon a Cartesian plane. Turtle graphics is a key feature of the Logo programming language.



The turtle has three attributes:

The turtle moves with commands that are relative to its own position, such as "move forward 10 spaces" and "turn left 90 degrees". The pen carried by the turtle can also be controlled, by enabling it, setting its color, or setting its width. A student could understand (and predict and reason about) the turtle's motion by imagining what they would do if they were the turtle. Seymour Papert called this "body syntonic" reasoning.

From these building blocks one can build more complex shapes like squares, triangles, circles and other composite figures. Combined with control flow, procedures, and recursion, the idea of turtle graphics is also useful in a Lindenmayer system for generating fractals.

Turtle geometry is also sometimes used in graphics environments as an alternative to a strictly coordinate-addressed graphics system.


Turtle graphics were added to the Logo programming language by Seymour Papert in the late 60s to support Papert's version of the turtle robot, a simple robot controlled from the user's workstation that is designed to carry out the drawing functions assigned to it using a small retractable pen set into or attached to the robot's body. Turtle geometry works somewhat differently from (x,y) addressed Cartesian geometry, being primarily vector-based (i.e. relative direction and distance from a starting point) in comparison to coordinate-addressed systems such as PostScript. As a practical matter, the use of turtle geometry instead of a more traditional model mimics the actual movement logic of the turtle robot. The turtle is traditionally and most often represented pictorially either as a triangle or a turtle icon (though it can be represented by any icon).

Papert's daughter, Artemis, has been using turtle graphics to explore the relationship between art and algorithm.

Turtle graphics has been supported on all major platforms, Kturtle is a non Logo, programming application bundled with most Linux distros, and Vectoria is the first app available on the iPhone.[1]

Full article ▸

related documents
Metcalfe's law
Ulam spiral
Bit error ratio
Painter's algorithm
Fractal antenna
Zombie process
Poem code
IBM Business System 12
Denormal number
Water, gas, and electricity
Constant folding
Extensible Stylesheet Language
Pedal triangle
Langton's ant
Bifurcation diagram
Euler's theorem
The Third Manifesto
Linearity of integration
Conjugate closure
Hilbert's Nullstellensatz
Essential singularity
Sigmoid function
Derivative of a constant