What is the Graphics Club?
This is a part of my Praxis III project where I spent a week teaching kids at the Baldwin School a little about Turtle Graphics in Python. I showed them some of the ways they could create art using computers. I met with the girls over a span of 1.5 weeks and this page consists of all the resources I used in the process. (For the other work I am doing within the scope of my Praxis III, please look at the Creative Computing Club.)
What are turtle graphics?
For more information look here. But Turtle graphics provide are a way of creating basic shapes using Python. Advanced application of this module allows for trigonometric plotting and mathematical pattern mapping. However we were looking at very basic applications of Python to create colourful symmetric shapes.
Introduction to Computer Generated Art
We started off with looking at this presentation Media:Computer Art.pptx which showed examples of art generated by computers. We talked about the distinction between digitally produced art (which they had been exploring in their class so far) and computer generated art. We talked about how the first is created distinctly by artists using computers as a tool and the other is created by programmers who create patterns using code. There is therefore some logic or rational to the second kind of art because it needs to be created by code.
Introduction to Python
At this point we started a brief introduction of Python. Some of the topics I covered in brief were
- If Statements
- For Statements
- Indent in Python
- The Logical flow of code
- Formulae for shapes
We wrote basic addition and mathematical functions to make the girls comfortable with coding.
Creating Basic Shapes
The first shapes we tried were circles, squares and polygons
from turtle import * def square(length): speed("fastest") color("blue") bgcolor("black") pensize(4) for i in range(4): forward(length) right(90) done()
def circle(radius): speed("fastest") color("blue") bgcolor("black") pensize(4) circle(radius) done()
def polygon(sides, length): speed("slowest") bgcolor("black") pensize(3) fill(1) color("yellow") for i in range(sides): forward(length) right(360/sides) #look at this formula and think about why? begin_fill() done()
Creating symmetrical shapes
Here we introduced the logic of creating interesting symmetrical shapes by moving 360 degrees with the same consistent shape. An example is
from turtle import * def symmetrical_shape(): speed("slowest") bgcolor("black") pensize(2) color("yellow") for i in range(10): #insert any shape here - I will insert a triangle for i in range(3): forward(50) right(120) #for a complete circle, turn 360 / (number of shapes) right(36) done()
Review and Examples
The last day was time for the girls to explore their creativity with all the information that was given to them. They were free to try different shapes which seemed interesting to them. Some recommendations were given in the form of this review document Media: review.docx. Some of the more interesting shapes created by the girls are here: Media: images.pptx
I used some material from the following presentation: File:Turtle Graphics.pptx