Arnold
There is only one module in this picture, a simple bubble gum figure created with variables so that it can be drawn in different sizes. A handful of different sizes of the figure are thrown over the drawing area.
The subprogram GOHOME has been changed a little and put in between every line in the figure. When the turtle crosses the borderline in FRAME, it is ordered to lift up the pen. In this way only the parts of the figure within FRAME are drawn.
The subprogram PICKCOLORS paints the resulting spaces at random. Finally a frame is added. It takes some time and skill to draw the figure. It has its own program and can easily be exported to other programs.
Starting command: ARNOLD Also try: REPEAT 12[ARNOLD WAIT 1000]
Arnold.lgo
TO P ; KEEPS THE ACTION INSIDE THE FRAMED AREA
IF OR (XCOR < 300) (YCOR < 300) PD
IF OR (XCOR < -300) (YCOR < -300) PD
IF OR (XCOR > 305) (YCOR > 305) PU
IF OR (XCOR < -305) (YCOR < -305) PU
END
TO ELEMENT :A ; DRAWS THE BASIC ELEMENT
PD SETPC 0
MAKE "X GETXY
REPEAT 30 [FD 3 * :A RT 2 P] ;1
REPEAT 12 [FD 2 * :A RT 12 P] ;2
REPEAT 20 [FD 3 * :A LT 2 P] ;3
REPEAT 12 [FD 2 * :A RT 5 P] ;4
REPEAT 40 [FD 2 * :A LT 6 P] ;5
REPEAT 40 [FD 3 * :A RT 4 P] ;6
REPEAT 12 [FD 3 * :A RT 6 P] ;7
REPEAT 20 [FD 3 * :A RT 4 P] ;8
REPEAT 12 [FD 3 * :A LT 15 P] ;9
REPEAT 12 [FD 3 * :A RT 4 P] ;10
REPEAT 12 [FD 3 * :A RT 10 P] ;11
REPEAT 20 [FD 3 * :A LT 4 P] ;12
REPEAT 20 [FD 3 * :A RT 12 P] ;13
REPEAT 16 [FD 3 * :A LT 4 P] ;14
REPEAT 10 [FD 2 * :A LT 16 P] ;15
REPEAT 12 [FD 3 * :A RT 3 P] ;16
REPEAT 12 [FD 3 * :A RT 12 P] ;17
REPEAT 12 [FD 3 * :A LT 20 P] ;18
REPEAT 12 [FD 3 * :A RT 4 P] ;19
REPEAT 12 [FD 3 * :A RT 12 P] ;20
REPEAT 6 [FD 3 * :A RT 12 P] ;21
REPEAT 12 [FD 4 * :A LT 10 P] ;22
REPEAT 12 [FD 3 * :A LT 12 P] ;23
REPEAT 12 [FD 3 * :A RT 4 P] ;24
REPEAT 12 [FD 3 * :A RT 12 P] ;25
REPEAT 18 [FD 5 * :A RT 4 P] ;26
REPEAT 12 [FD 3 * :A LT 15 P] ;27
REPEAT 16 [FD 3 * :A RT 15 P] ;28
SETXY :X PU
END
TO FRAME; MAKES THE FRAME AROUND THE DRAWING
SETWIDTH 3 PU HT SETPC 0 HOME
BK 300 RT 90 BK 300 PD
REPEAT 4 [FD 600 LT 90]
SETWIDTH 1
PU HOME
END
TO ARNOLD; MAIN PROGRAM
CS SETWIDTH 1 PU SETPC 0 HOME FS
MAKE "X 3 + RANDOM 3
REPEAT :X [MAKE "A PICK [0.4 2 0.6 2.2 1 1.2 1.4 1.6 1.8 2 2.2 2] PU RT RANDOM 360 FD RANDOM 120 RT RANDOM 360 ELEMENT :A PU HOME]
FRAME PICKCOLORSDOT 400 FRAME
PU SETXY [350 -340] PD SETPC "WHITE FILL
END
TO PICKCOLORSDOT :T; PAINTS AT RANDOM THE AREA INSIDE THE FRAME
PU SETXY [400 -200] SETPC [254 254 254] PD FILL PU; PAINTS THE BACKGROUND WITH A LIGHT GRAY
PU HOME HT REPEAT :T [RT RANDOM 360 FD RANDOM 500 PD SETPC (LIST RANDOM 255 RANDOM 255 RANDOM 255) TEST DOT? IFT [PU] FILL PU HOME]
END
Procedure | ARNOLD |
Description | Logo Art |
Level | Beginner |
Tags | Art |