an introduction to logo: drawing, moving, turning, repetition, and basic procedures

53
B.A. (Mahayana Studies) 000-209 Introduction to Computer Science November 2005 - March 2006 12. Logo (Part 1) An introduction to Logo: drawing, moving, turning, repetition, and basic procedures.

Upload: irina

Post on 21-Mar-2016

25 views

Category:

Documents


0 download

DESCRIPTION

B.A. (Mahayana Studies) 000-209 Introduction to Computer Science November 2005 - March 2006 12. Logo (Part 1). An introduction to Logo: drawing, moving, turning, repetition, and basic procedures. Overview. 1. What is Logo? 2. Installing Logo 3. Basic Commands 4. Drawing a Square - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: An introduction to Logo: drawing, moving, turning, repetition, and basic procedures

B.A. (Mahayana Studies)000-209 Introduction to Computer Science

November 2005 - March 2006

12. Logo (Part 1)

An introduction to Logo: drawing, moving, turning, repetition, and basic procedures.

Page 2: An introduction to Logo: drawing, moving, turning, repetition, and basic procedures

000-209 Intro to CS. 12/logo1 2

Overview

1. What is Logo? 2. Installing Logo 3. Basic Commands 4. Drawing a Square 5. More Commands 6. The Repeat Command

continued

Page 3: An introduction to Logo: drawing, moving, turning, repetition, and basic procedures

000-209 Intro to CS. 12/logo1 3

7. Procedures 8. Circle and Square 9. Drawing a Triangle 10. Drawing a House 11. Drawing a Checkboard 12. MSW Logo Examples

Page 4: An introduction to Logo: drawing, moving, turning, repetition, and basic procedures

000-209 Intro to CS. 12/logo1 4

1. What is Logo?

A programming language developed at the MIT Artificial Intelligence Lab MIT = Massachusetts Institute of Technology

Logo is easy to learn, but powerful.

Logo has been used in telecommunications, multimedia, and robotics.

Page 5: An introduction to Logo: drawing, moving, turning, repetition, and basic procedures

000-209 Intro to CS. 12/logo1 5

2. Installing Logo

MSW Logo Website: http://www.softronix.com/logo.html

The set-up kit (Windows installer): http://www.softronix.com/download/mswlogo65.exe

Tutorials The Great Logo Adventure

http://www.softronix.com/download/tgla.zip An Introduction to MSW Logo

http://www.southwest.com.au/~jfuller/logotut/menu.htm

continued

We're using MSW Logo, but there are many other Logo systems.

Page 6: An introduction to Logo: drawing, moving, turning, repetition, and basic procedures

000-209 Intro to CS. 12/logo1 6

Double click on mswlogo65.exe to start the installation.

The program will be added to the start menu as "Microsoft Windows Logo". called MSW Logo

The MSWLogo directory contains an Examples/ folder (see end of these slides).

Page 7: An introduction to Logo: drawing, moving, turning, repetition, and basic procedures

000-209 Intro to CS. 12/logo1 7

MSW Logo in Action

turtle drawing area

the turtle

editor

commandwindow

command input window

statuswindow

menus

commandbox

Page 8: An introduction to Logo: drawing, moving, turning, repetition, and basic procedures

000-209 Intro to CS. 12/logo1 8

What is the Turtle?

Originally, the turtle was a robot that moved around the floor when the user typed Logo commands into a computer.

Today, it is a picture on the Logo drawing area in MSW Logo, the turtle is drawn as a triangle

Page 9: An introduction to Logo: drawing, moving, turning, repetition, and basic procedures

000-209 Intro to CS. 12/logo1 9

3. Basic Commands

forward <number> the larger the number the farther the turtle will go if you use a large enough number, the turtle will walk

off the screen and wrap around to the other side e.g. forward 40

back <number> the turtle will move backwards e.g. back 33

continued

Page 10: An introduction to Logo: drawing, moving, turning, repetition, and basic procedures

000-209 Intro to CS. 12/logo1 10

right <number> the number is how many degrees the turtle will turn ri

ght e.g. RIGHT 90

turn the turtle to the right by 90 degrees.

left <number> turns the turtle to the left

Page 11: An introduction to Logo: drawing, moving, turning, repetition, and basic procedures

000-209 Intro to CS. 12/logo1 11

4. Drawing a Square

forward 100 right 90 forward 100 right 90 forward 100 right 90 forward 100

type these commands intothe command input window, pressing <enter> after each command

Page 12: An introduction to Logo: drawing, moving, turning, repetition, and basic procedures

000-209 Intro to CS. 12/logo1 12

Error Messages

Your input: forward 10 20

Your input: back

errormessages

Page 13: An introduction to Logo: drawing, moving, turning, repetition, and basic procedures

000-209 Intro to CS. 12/logo1 13

5. More Commands

penup causes the turtle to pick up its pen so that when it mov

es no line is drawn

pendown puts the pen back down so drawing starts again

continued

Page 14: An introduction to Logo: drawing, moving, turning, repetition, and basic procedures

000-209 Intro to CS. 12/logo1 14

setpencolor <number> changes the colour of the turtle’s pen e.g. setpencolor 5

make your turtle draw a pink line

continued

MSW Logo hascommand helpunder "Index"

Page 15: An introduction to Logo: drawing, moving, turning, repetition, and basic procedures

000-209 Intro to CS. 12/logo1 15

clean clears the turtle's drawing area

home moves the turtle back to the center of the drawing area

Page 16: An introduction to Logo: drawing, moving, turning, repetition, and basic procedures

000-209 Intro to CS. 12/logo1 16

Example Using Setpencolor

forward 100 setpencolor 5 right 72 forward 100 setpencolor 14 right 72 forward 100 setpencolor 3 right 72 forward 100 setpencolor 2 right 72 forward 100

Because the turtle turned right 72 degrees 5 times, it made a pentagon

Page 17: An introduction to Logo: drawing, moving, turning, repetition, and basic procedures

000-209 Intro to CS. 12/logo1 17

6. The Repeat Command

Get the turtle to do things many times, by using the repeat command.

e.g. repeat 4 [forward 10] move the turtle forward 10 spaces, 4 times the turtle will move forward 40 spaces altogether

In general, you type: repeat <number> [ <commands> ]

Page 18: An introduction to Logo: drawing, moving, turning, repetition, and basic procedures

000-209 Intro to CS. 12/logo1 18

Draw a Square with Repeat

repeat 4 [forward 100 right 90]

Page 19: An introduction to Logo: drawing, moving, turning, repetition, and basic procedures

000-209 Intro to CS. 12/logo1 19

Using Repeat

1.What will the following command draw? repeat 3 [forward 100 left 120]

2. Make a circle using the repeat command.

Page 20: An introduction to Logo: drawing, moving, turning, repetition, and basic procedures

000-209 Intro to CS. 12/logo1 20

Answer 1: Draw a Triangle

repeat 3 [forward 100 left 120]

Page 21: An introduction to Logo: drawing, moving, turning, repetition, and basic procedures

000-209 Intro to CS. 12/logo1 21

Answer 2: Draw a Circle

repeat 360 [forward 1 right 1]

Page 22: An introduction to Logo: drawing, moving, turning, repetition, and basic procedures

000-209 Intro to CS. 12/logo1 22

7. Procedures

Add a new command to Logo by writing a procedure.

to <name of your procedure> <command 1> <command 2> :end

A procedure is a new command, built out of other commands

continued

Page 23: An introduction to Logo: drawing, moving, turning, repetition, and basic procedures

000-209 Intro to CS. 12/logo1 23

For example: to square

repeat 4 [forward 100 right 90] end

The new command (procedure) is for drawing a square it can be used just like other Logo commands

Page 24: An introduction to Logo: drawing, moving, turning, repetition, and basic procedures

000-209 Intro to CS. 12/logo1 24

Typing in a Procedure

•A "To Mode" window pops up after you type to <name of procedure>

•You enter your procedure line by line, and type end or press Cancel to finish.

continued

Page 25: An introduction to Logo: drawing, moving, turning, repetition, and basic procedures

000-209 Intro to CS. 12/logo1 25

• After typing repeat 4 [forward 100 right 90] end

continued

Page 26: An introduction to Logo: drawing, moving, turning, repetition, and basic procedures

000-209 Intro to CS. 12/logo1 26

Executing the procedure: square

Page 27: An introduction to Logo: drawing, moving, turning, repetition, and basic procedures

000-209 Intro to CS. 12/logo1 27

A Circle Procedure

The program: to circle

repeat 360 [forward 2 right 1] end

Test it out: circle

Page 28: An introduction to Logo: drawing, moving, turning, repetition, and basic procedures

000-209 Intro to CS. 12/logo1 28

The Edall Button

To add more procedures, or change one you've already written, click on the Edall button.

Page 29: An introduction to Logo: drawing, moving, turning, repetition, and basic procedures

000-209 Intro to CS. 12/logo1 29

Using Edall

Enter a procedure for drawing a purple pentagon: to pentagon

setpencolor 10 repeat 5 [forward 75 right 72] end

In the Editor "File" menu, select "Save and Exit" when you are finished.

Page 30: An introduction to Logo: drawing, moving, turning, repetition, and basic procedures

000-209 Intro to CS. 12/logo1 30

A Pentagon

Page 31: An introduction to Logo: drawing, moving, turning, repetition, and basic procedures

000-209 Intro to CS. 12/logo1 31

Saving Procedures

If want to use the procedures some other time, you should save them.

Page 32: An introduction to Logo: drawing, moving, turning, repetition, and basic procedures

000-209 Intro to CS. 12/logo1 32

8. Circle and Square

How would you write the procedure circle_and_square to make a drawing that looks like this?

The triangle is the position of the turtle at the end of the procedure.

Page 33: An introduction to Logo: drawing, moving, turning, repetition, and basic procedures

000-209 Intro to CS. 12/logo1 33

Procedure

to circle_and_square home clean repeat 360 [forward 2 right 1] forward 50 repeat 3 [left 90 forward 100] left 90 forward 50 end

Now change circle_and_square so it uses the circle procedure.

continued

Page 34: An introduction to Logo: drawing, moving, turning, repetition, and basic procedures

000-209 Intro to CS. 12/logo1 34

A procedure callsanother procedure.

circle_and_square

circle

calls

Page 35: An introduction to Logo: drawing, moving, turning, repetition, and basic procedures

000-209 Intro to CS. 12/logo1 35

9. Drawing a Triangle

We want a procedure that draws a triangle with a flat base.

This requires different turnings of the turtle:

start

30120

12090

Page 36: An introduction to Logo: drawing, moving, turning, repetition, and basic procedures

000-209 Intro to CS. 12/logo1 36

Page 37: An introduction to Logo: drawing, moving, turning, repetition, and basic procedures

000-209 Intro to CS. 12/logo1 37

10. Drawing a House

A simple house is a square with a triangle on top of it.

After drawing the square, the turtle must move to the start of the triangle.

After drawing the triangle, the turtle must move back to its original position.

Page 38: An introduction to Logo: drawing, moving, turning, repetition, and basic procedures

000-209 Intro to CS. 12/logo1 38

Page 39: An introduction to Logo: drawing, moving, turning, repetition, and basic procedures

000-209 Intro to CS. 12/logo1 39

Procedure Calls

house

square

calls

triangle

Page 40: An introduction to Logo: drawing, moving, turning, repetition, and basic procedures

000-209 Intro to CS. 12/logo1 40

11. Drawing a Checkboard

We're going to write a series of procedures that help us make a checkboard.

A checkboard is a series of columns. A column is a series of squares. A square is made from 4 corners.

Page 41: An introduction to Logo: drawing, moving, turning, repetition, and basic procedures

000-209 Intro to CS. 12/logo1 41

Procedure Calls

checkboard column calls

square corner

I'll write four procedures, that call each other in a chain.

Page 42: An introduction to Logo: drawing, moving, turning, repetition, and basic procedures

000-209 Intro to CS. 12/logo1 42

Drawing a Corner

We want a procedure that draws a straight line, then turns 90 degrees to the right.

to cornerforward 20right 90end

Page 43: An introduction to Logo: drawing, moving, turning, repetition, and basic procedures

000-209 Intro to CS. 12/logo1 43

Where did the Turtle Go?

hideturtle make the turtle invisible drawing still occurs, but with no turtle

showturtle makes the turtle visible again

Page 44: An introduction to Logo: drawing, moving, turning, repetition, and basic procedures

000-209 Intro to CS. 12/logo1 44

Drawing a Square with Corners

A square is four calls to corner:

Page 45: An introduction to Logo: drawing, moving, turning, repetition, and basic procedures

000-209 Intro to CS. 12/logo1 45

Drawing a Column with Squares

A column is eight squares, followed by the turtle moving back to its starting position.

After drawing a square, the turtle needs to move up by 20 to get to the starting position for the next square.

start

start

continued

Page 46: An introduction to Logo: drawing, moving, turning, repetition, and basic procedures

000-209 Intro to CS. 12/logo1 46

Page 47: An introduction to Logo: drawing, moving, turning, repetition, and basic procedures

000-209 Intro to CS. 12/logo1 47

Drawing a Checkboard with Columns

A Checkboard is eight columns.

After drawing a column, the turtle must move right to the starting position for the next column.

At the end of drawing the checkboard, the turtle should move back to the lower-left corner of the checkboard.

Page 48: An introduction to Logo: drawing, moving, turning, repetition, and basic procedures

000-209 Intro to CS. 12/logo1 48

Page 49: An introduction to Logo: drawing, moving, turning, repetition, and basic procedures

000-209 Intro to CS. 12/logo1 49

12. MSW Logo Examples

Examples/Misc/curves.lgo continued

Page 50: An introduction to Logo: drawing, moving, turning, repetition, and basic procedures

000-209 Intro to CS. 12/logo1 50

Examples/3D/Hilbert.lgocontinued

Page 51: An introduction to Logo: drawing, moving, turning, repetition, and basic procedures

000-209 Intro to CS. 12/logo1 51

Examples/3D/solar.lgo

continued

Page 52: An introduction to Logo: drawing, moving, turning, repetition, and basic procedures

000-209 Intro to CS. 12/logo1 52

Examples/Misc/clock.lgo

continued

Page 53: An introduction to Logo: drawing, moving, turning, repetition, and basic procedures

000-209 Intro to CS. 12/logo1 53

Examples/Windows/calc.lgo