TO MOTIF SIZE ; DRAW AN ASYMETRIC PATTERN. FORWARD :SIZE RIGHT 90 FORWARD :SIZE/2 BACK :SIZE/2 LEFT 90 BACK :SIZE END TO REVERSEMOTIF SIZE ; DRAW THE MIRROR IMAGE OF THE PATTERN DRAWN BY PROCEDURE MOTIF. ; THIS IS DONE BY SWAPPING THE COMMANDS "LEFT" AND "RIGHT". FORWARD :SIZE LEFT 90 FORWARD :SIZE/2 BACK :SIZE/2 RIGHT 90 BACK :SIZE END TO INFCROSS SIZE NUMREPS ; DRAW A FRIEZE PATTERN WITH SYMMETRY TYPE (BLUE) INFINITY (RED) CROSS. ; START WITH THE PEN DOWN. PENDOWN REPEAT :NUMREPS [ ; DRAW THE MOTIF. MOTIF :SIZE ; MOVE FORWARD AND LEAVE THE TURTLE FACING DOWN. PENUP RIGHT 90 FORWARD :SIZE RIGHT 90 PENDOWN ; DRAW THE MIRROR IMAGE MOTIF (POINTING DOWN). REVERSEMOTIF :SIZE ; MOVE FORWARD AND LEAVE THE TURTLE FACING UP. PENUP LEFT 90 FORWARD :SIZE LEFT 90 PENDOWN ] END TO INFINF SIZE NUMREPS ; DRAW A FRIEZE PATTERN WITH SYMMETRY TYPE (BLUE) INFINITY INFINITY. ; START WITH THE PEN DOWN PENDOWN REPEAT :NUMREPS [ ; DRAW THE MOTIF. MOTIF :SIZE ; MOVE FORWARD (DOUBLE STEP) AND LEAVE THE TURTLE FACING UP. PENUP RIGHT 90 FORWARD 2*:SIZE LEFT 90 PENDOWN ] END TO QUIZ4 ; EXAMPLE OF PART OF A PROGRAM FOR ASSIGNMENT QUIZ 4 CLEARSCREEN ; DRAW PATTERN (BLUE) INFINITY INFINITY. INFINF 10 34 ; RETURN TO THE CENTER OF THE SCREEN THEN MOVE UP. PENUP HOME FORWARD 50 PENDOWN ; DRAW PATTERN (BLUE) INFINITY (RED) CROSS. INFCROSS 10 34 END TO LOADFILE ; USE THIS PROCEDURE TO QUICKLY LOAD NEW VERSIONS OF THE LOGO CODE. LOAD "W:/FRIEZES.TXT END