Graphics Club

From IPRE Wiki
Jump to: navigation, search

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

  • Variables
  • Functions
  • 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

Other Resources

I used some material from the following presentation: File:Turtle Graphics.pptx