CIRCLE

Aus C64-Wiki

Wechseln zu: Navigation, Suche
CIRCLE
Format: CIRCLE <x>,<y>,<rx>,<ry>,<f>
Parameter
x: X-Koordinate Mittelpunkt (0..319 / 0..159)
y: Y-Koordinate Mittelpunkt (0..199)
rx: Radius in X-Richtung (0..255)
ry: Radius in Y-Richtung (0..255)
f: Farbquelle (0..2 / 0..4)
Einordnung
Typ: Anweisung
Kontext: Grafik
Aufgabe: Zeichnen von Ellipsen (u. Kreisen)
Shortcut: keiner
Verwandte Befehle
LINE - REC - BLOCK - PLOT - ARC - ANGL - PAINT


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.

Ein einfaches Beispiel für das Zeichnen von Kreisen
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.)

Persönliche Werkzeuge