TURTLE GRAPHICS IP 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 4 GraphicsWindow.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 AROUND YOU 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)