VIEWPORT X, Y, Breite, Höhe


Beschreibung
Mit VIEWPORT kann man einen Bereich auf dem Bildschirm eingrenzen in dem Grafiken ausgegeben werden sollen. Die Grafik erscheint nur innerhalb dieses Rechtecks. Sollte eine Grafik über dem VIEWPORT-Bereich hinausgehen, so wird die einfach abgeschnitten. Profis nennen das auch 'windowing', 'portaling' oder 'clipping'. Der Grafikbereich außerhalb des VIEWPORT-Bereichs wird dagegen nicht geändert. Dieser Befehl wirkt sich auf den aktuell zum Zeichnen verwendeten Buffer aus. Um VIEWPORT zu deaktivieren, muss man einfach den kompletten Buffer markieren.

Für diesen Befehl gibt es Tausende von Anwendungsmöglichkeiten. So kann man z.B. Einen Splitscreen für zwei Spieler bauen, oder auch ein Scrollbereich ist somit realisierbar. Eine weitere Anwendungsmöglichkeit ist das Schützen eines Grafikbereichs. Somit kann man keine Bildschirmbereiche "aus versehen" übermalen.


Parameter
X=Horizontale Startkoordinate (links)
Y=Vertikale Startkoordinate (oben)
Breite=Breite des Ausgabebereichs in Pixel
Höhe=Höhe des Ausgabebereichs in Pixel


Rückgabewert
-


Beispiel
Dieses Programm zeichnet bunte Rechtecke. Da aber ein Fenster markiert wurde, erfolgt die Ausgabe nur in diesem Grafikbereich:

GRAPHICS 800,600
SETBUFFER BACKBUFFER()
VIEWPORT 100,100,200,200
WHILE NOT KEYHIT(1)
   CLS
   FOR t = 1 TO 100
      COLOR RND(255),RND(255),RND(255)
      RECT RND(800),RND(600),RND(300),RND(300),RND(0,1)
   NEXT
   FLIP
WEND


Siehe auch
GRAPHICS, ORIGIN