CIRCLE
Aus C64-Wiki
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Dieser Artikel beschreibt das Simons'-Basic-Schlüsselwort CIRCLE.
Typ: Anweisung
Syntax: CIRCLE <x>,<y>,<rx>,<ry>,<f>
Mit CIRCLE zeichnet man Ellipsen bzw. Kreise (Sonderfall der Ellipse) um einen Mittelpunkt (<x>,<y>) mit den Radien <rx> und <ry> in der Farbe, die durch <f> bestimmt wird (s. dazu HIRES). In x-Richtung darf eine Ellipse 255 Punkte Radius aufweisen, in y-Richtung ebenfalls. Punkte, die über den Bildschirmrand hinausgehen würden, werden auf diese höchstmöglichen Koordinaten begrenzt, der Interpreter malt aber weiter. Die Farbe hängt vom Grafikmodus ab und bezieht sich auf die Farbangaben hinter HIRES einerseits bzw. MULTI und LOW COL andererseits. Der Punkt 0,0 ist in der linken oberen Ecke.
Wird kein Parameter eingegeben, so erscheint die Fehlermeldung ?SYNTAX ERROR, bei einem falschen Wert erscheint ?ILLEGAL QUANTITY ERROR.
Beispiel: 100 HIRES 0,1 110 FOR i=0 TO 9: FOR j=0 TO 5: k=(i+j)/2 120 CIRCLE 160+15*i,100+15*j,15-k,15-k,1 130 CIRCLE 160-15*i,100+15*j,15-k,15-k,1 140 CIRCLE 160-15*i,100-15*j,15-k,15-k,1 150 CIRCLE 160+15*i,100-15*j,15-k,15-k,1 160 NEXT: NEXT 170 FOR i=0 TO 9: FOR j=0 TO 5 180 PAINT 160+15*i,100+15*j,1 190 PAINT 160-15*i,100+15*j,1 200 PAINT 160-15*i,100-15*j,1 210 PAINT 160+15*i,100-15*j,1 220 NEXT: NEXT 230 WAIT 198,255 (erzeugt die abgebildete Grafik)
Beispiel übernommen und angepasst aus dem Buch Spiele mit Computergrafik.
(Die Abarbeitungszeit auf einem Original-C64 ist sehr lang.)
