Upload
chun
View
148
Download
5
Tags:
Embed Size (px)
DESCRIPTION
Python Turtle Graphics. ASFA Programming II 2010-2011. A first Object: Logo Turtle. Dr. Seymour Papert at MIT invented the Turtle as a graphical and mathematical object to think with for the children’s programming language, Logo (1966). Robot Turtles. - PowerPoint PPT Presentation
Citation preview
Python Turtle Graphics
ASFA Programming II2010-2011
A first Object: Logo Turtle
• Dr. Seymour Papert at MIT invented the Turtle as a graphical and mathematical object to think with for the children’s programming language, Logo (1966)
Robot Turtles
• Children programmed robot turtles to draw pictures
• A turtle is an object.– Every turtle understands the same methods.– Every turtle has the same fields or instance
variables.• Heading, body color, pen color, X and Y position.• Yet each turtle can have its own values for these fields.
• Many modern programming languages, such as Python, continue to use turtles for drawing
• Think of a turtle crawling on a piece of paper, with a pen tied to its tail– Sheet of paper is a window on a display screen– Position specified with (x, y) coordinates• Cartesian coordinate system, with origin (0, 0) at the
center of a window
• Imagine a turtle starting at (0, 0) – Give it the command turtle.forward(15), and it
moves (on-screen) 15 pixels in the direction it is facing, drawing a line as it moves.
– Give it the command turtle.left(25), and it rotates in-place 25 degrees counter-clockwise.
Some Examples of Turtle Programs
• A forest scene created with turtles• http://www.youtube.com/watch?v=Wwzv0FW
J5gQ• A Recursive Turtle Drawing Program• http://www.youtube.com/watch?feature=play
er_embedded&v=YummtrvNC2o
Some Key Methodsfrom turtle import *
# pen/turtle starts at the center (x=0, y=0) of the turtle display area
shape(“turtle”)color("green")# pen up, don't drawup()# centers the circlegoto(0,-50)# pen down, drawdown()# radius=50 center is 50 radius units above the turtlecircle(50)up()# center the turtle againgoto(0,0)down() tur2.py
Turtle drawing with repetitionfrom turtle import *def star(): color('red', 'purple') colormode(255) begin_fill() for i in range(36): pencolor(3*i + 100, 0 , 5*i) forward(200) left(85) forward(10) left(45) forward(40) left(-90) forward(40) left(85) forward(10) left(45) end_fill() setpos(100,45) color("white","yellow") shape("turtle")
star()
spyro.py
Recursive Drawing Algorithms
Recursive Algorithms are used to create fractals
Documentation available explaining methods available
• If you have trouble getting the docs from Python, you can go to http://docs.python.org/library/turtle.html
Turtle library contains many methods
Click on method you want to see
Method usage documentation and examples
Endless Artistic Possibilities
What can you create?
Assignment• Explore the documentation • Design and program a turtle drawing a picture
Must include:• At least 4 colors• At least 4 shapes• A filled object• Looping
• Show me the drawing creation• Email your program to me after checked off• Enrichment: recreate a picture or animate a story
• Create a Recursive turtle drawing – art work