13
TURTLE GRAPHICS IP 10 2014 MR. MELLESMOEN

TURTLE GRAPHICS IP 10 2014 MR. MELLESMOEN. LOGO IN THE 1970’S THERE WAS A SIMPLE BUT POWERFUL PROGRAMMING LANGUAGE CALLED LOGO THAT WAS USED BY A FEW

Embed Size (px)

Citation preview

TURTLE GRAPHICSIP 10 2014

MR. MELLESMOEN

LOGO

IN THE 1970’S THERE WAS A SIMPLE BUT POWERFUL PROGRAMMING LANGUAGE CALLED LOGO THAT WAS USED BY A FEW RESEARCHERS. IN THE ’80’S TURTLE GRAPHICS WAS ADDED TO THE LANGUAGE AND THE POPULARITY OF THIS LANGUAGE GREW IMMENSELY

THE TURTLE

TO BEGIN, WE NEED TO MAKE THE TURTLE VISIBLE ON THE SCREEN.

SIMPLY TYPE IN:

TURTLE.SHOW( )

WHAT YOU WILL SEE IS A WHITE GRAPHICS WINDOW WITH A GREEN TURTLE IN THE MIDDLE. IT IS THIS TURTLE THAT WILL FOLLOW OUR INSTRUCTIONS AND DRAW WHAT WE COMMAND IT TO.

MOVING AND DRAWING

ONE OF THE INSTRUCTIONS THE TURTLE UNDERSTANDS IS MOVE. THIS OPERATION REQUIRES A NUMBER TO TELL THE TURTLE HOW FAR (OR HOW MANY PIXELS) TO MOVE.

ENTER THE FOLLOWING:

TURTLE.MOVE (100)

IF ENTERED CORRECTLY YOU SHOULD HAVE SEEN THE TURTLE MOVE 100 PIXELS UP.

HOW DO YOU THINK YOU COULD MAKE IT MOVE 100 PIXELS DOWN?

DRAWING A SQUARE

TRY THE FOLLOWING TO SEE IF YOU CAN CREATE A SQUARE:

TURTLE.MOVE(100)

TURTLE.TURNRIGHT( )

TURTLE.MOVE(100)

TURTLE.TURNRIGHT ( )

THESE ARE THE FIRST 4 LINES OF COMMAND YOU WILL USE. YOU NEED TO FIGURE OUT HOW TO COMPLETE THE SQUARE.

USING A FOR LOOP

WE CAN USE A FOR AND ENDFOR LOOP TO DRAW A SQUARE.

FOR I = 1 TO 4

TURTLE.MOVE(100)

TURTLE.TURNRIGHT( )

ENDFOR

When you are done try this one:For i = 1 To 4GraphicsWindow.PenColor=GraphicsWindow.GetRandomColor( ) Turtle.Move(100) Turtle.TurnRight( ) EndFor

GETTING A LITTLE MORE COMPLEX

WE CAN HAVE OUR TURTLE DRAW MORE COMPLEX SHAPES BY ADDING A TURN COMMAND.

WHAT DO YOU END UP WITH WHEN YOU INPUT:

FOR I = 1 TO 6

TURTLE.MOVE(100)

TURTLE.TURN(60)

ENDFOR

ANGLES

FOR A REGULAR POLYGON THE ANGLES ARE FOUND BY DIVIDING 360 BY THE NUMBER OF SIDES (I.E. THE HEXAGON HAD ANGLES OF 60 BECAUSE 360/6 SIDES = 60)

ARMED WITH THIS, TRY:

SIDES=12

LENGTH=400/SIDES

ANGLE=360/SIDES

FOR I = 1 TO SIDES

TURTLE.MOVE(LENGTH)

TURTLE.TURN(ANGLE)

ENDFOR

CIRCLE (OR CLOSE TO IT)

IN YOUR LAST PROGRAM YOU ENTERED THE NUMBER OF SIDES AS 12, WHAT WOULD YOUR SHAPE LOOK LIKE IF YOU TOLD THE COMPUTER TO USE 200 SIDES? 500?

TRY IT!

TRY THIS ONE

SIDES=50

LENGTH=400/SIDES

ANGLE=360/SIDES

TURTLE.SPEED=9

FOR J = 1 TO 20

FOR I = 1 TO SIDES

TURTLE.MOVE(LENGTH)

TURTLE.TURN(ANGLE)

ENDFOR

TURTLE.TURN(18)

ENDFOR

MOVING AROUNDYOU CAN USE A COMMAND CALLED PENUP. THIS WILL TELL THE TURTLE TO STOP DRAWING UNTIL YOU TELL IT TO PENDOWN.

TRY:

SIDES=6

LENGTH=400/SIDES

ANGLE=360/SIDES

FOR I = 1 TO SIDES

FOR J = 1 TO 6

TURTLE.MOVE(LENGTH/12)

TURTLE.PENUP ( )

TURTLE.MOVE(LENGTH/12)

TURTLE.PENDOWN ( )

ENDFOR

TURTLE.TURN(ANGLE)

ENDFOR

CHALLENGE

USE THE TURTLE TO WRITE THE NUMBER 11

DON’T PEAK AT THE NEXT SLIDE, BUT

THE PROGRAM FOR 11 IS THERE.

DON’T PEAK!TURTLE.MOVE(100)

TURTLE.TURNLEFT()

TURTLE.MOVE(10)

TURTLE.PENUP()

TURTLE.MOVE(20)

TURTLE.PENDOWN()

TURTLE.MOVE(10)

TURTLE.TURN(180)

TURTLE.MOVE(10)

TURTLE.TURNRIGHT()

TURTLE.MOVE(100)