TOP-DOWN-Programm
(C) 2000 Bennöhr
hausmi2.cml 22.4.1999
0010 USE turtle
0020 pendown; nowrap; hideturtle
0030 fullscreen
0050 bild
0060 END
0070
0080 PROC bild
0090 grundlinie
0100 haus
0110 garage
0120 baum
0130 wege
0140 zaun
0145 farbe
0150 ENDPROC bild
0160
0170 PROC grundlinie
0180 moveto(-160,-50)
0190 right(90)
0200 forward(320)
0210 left(90)
0220 ENDPROC grundlinie
0230
0240 PROC haus
0250 umriß
0260 dachgaube(-58,16)
0270 fensterunten
0280 tür
0290 schornstein
0300 ENDPROC haus
0310
0320 PROC garage
0330 moveto(80,-50)
0340 rechteck(70,50)
0345 färben(xcor+1,ycor+1,7)
0350 moveto(90,-50)
0360 LOOP 10 TIMES | // Garagentor |
0370 rechteck(5,40)
0375 färben(xcor+1,ycor+1,8)
0380 right(90)
0390 forward(5)
0400 left(90)
0410 ENDLOOP
0420 ENDPROC garage
0430
0440 PROC baum
0450 moveto(-125,-50)
0460 forward(40)
0470 moveto(-115,-50)
0480 forward(40)
0490 moveto(-120,-10)
0500 right(90)
0510 arcl(20,360)
0520 left(90)
0530 ENDPROC baum
0540
0550 PROC wege
0560 left(150)
0570 moveto(-20,-50)
0580 forward(70)
0590 moveto(20,-50)
0600 forward(70)
0610 moveto(90,-50)
0620 forward(70)
0630 moveto(140,-50)
0640 forward(70)
0650 right(150)
0660 ENDPROC wege
0670
0680 PROC zaun
0690 moveto(-85,-50)
0700 LOOP 16 TIMES
0710 zaunpfahl
0720 left(90)
0730 forward(5)
0740 right(90)
0750 ENDLOOP
0760 ENDPROC zaun
0770
0780 PROC umriß
0790 moveto(-90,10)
0800 right(30)
0810 forward(60)
0820 right(60)
0830 forward(50)
0840 moveto(10,ycor)
0850 forward(50)
0860 right(60)
0870 forward(60)
0880 right(120)
0890 forward(180)
0900 right(90)
0910 moveto(-80,-50)
0920 forward(60)
0930 moveto(80,-50)
0940 forward(60)
0950 ENDPROC umriß
0960
0970 PROC dachgaube(posx,posy)
0980 moveto(posx,posy)
0990 right(45)
1000 forward(27)
1010 arcr(20,45)
1020 forward(50)
1030 arcr(20,45)
1040 forward(27)
1050 left(135)
1051 moveto(posx+28,posy); fenster
1052 moveto(posx+68,posy); fenster
1060 ENDPROC dachgaube
1070
1080 PROC fensterunten
1090 moveto(-60,-30); fenster
1100 moveto(40,-30); fenster
1130 ENDPROC fensterunten
1140
1150 PROC tür
1160 moveto(-20,-30); fenster
1170 moveto(-20,-50); fenster
1180 moveto(0,-30); fenster
1190 moveto(0,-50); fenster
1200 ENDPROC tür
1210
1220 PROC schornstein
1230 moveto(-10,60)
1240 rechteck(20,10)
1250 ENDPROC schornstein
1260
1270 PROC zaunpfahl
1280 forward(22)
1290 right(30)
1300 forward(5)
1310 right(120)
1320 forward(5)
1330 right(30)
1340 forward(22)
1350 right(90)
1360 forward(5)
1370 right(90)
1375 färben(xcor+1,ycor+1,7)
1380 ENDPROC zaunpfahl
1390
1400
1410 PROC rechteck(br,hö)
1420 LOOP 2 TIMES
1430 fd(hö); rt(90);
fd(br); rt(90)
1440 ENDLOOP
1450 ENDPROC rechteck
1460
1470 PROC fenster
1480 rechteck(20,20)
1482 färben(xcor+1,ycor+1,8)
1485 move(0,10); draw(20,0)
1486 move(-10,10); draw(0,-20)
1490 ENDPROC fenster
1500
1510 PROC farbe
1520 färben(-100,-70,10) | // Rasen links | 1530 färben(20,-95,10) | // Rasen Mitte | 1540 färben(-120,0,10) | // Baumkrone | 1550 färben(155,-90,10) | // Rasen rechts | 1560 färben(0,95,9) | // Himmel | 1570 färben(0,0,7) | // Haus | 1572 färben(-120,-15,6) | // Baumstamm | 1573 färben(0,-55,14) | // Weg zur Haustür | 1574 färben(120,-55,14) | // Weg
zur Garage | 1575 färben(0,50,6) | // Dach | 1576 färben(0,63,5) | // Schornstein | 1580 ENDPROC farbe 1590
1600 PROC färben(xpos,ypos,farbe)
1610 pencolor(farbe) | // nur noch
| 1620 fill(xpos,ypos) | // COMAL-
| 1630 pencolor(15) | // Anweisungen | 1640 ENDPROC färben
|