VIEW (Grafik)

FreeBASIC-Referenz » Alphabetische Befehlsreferenz » V » VIEW (Grafik)

Syntax: VIEW [[SCREEN] (x1, y1)-(x2, y2) [,[ Farbe][, Rand]]]
Typ: Anweisung
Kategorie: Grafik

VIEW definiert neue Gültigkeitsbereiche für physische Bildschirmkoordinaten, setzt also neue Clipping-Grenzen.

VIEW wird benutzt, um neue Clipping-Grenzen zu setzen und damit ein neues Darstellungsfeld festzulegen. Ein neu definiertes Darstellungsfeld ersetzt ein eventuell bereits bestehendes. VIEW hat nur im Grafikfenster eine Auswirkung.

Alle Drawing Primitives sind von der Größe des Darstellungsfeldes abhängig; Grafikanweisungen, die auf Koordinaten außerhalb dieser Grenzen verweisen, haben keine Auswirkungen.

Farben müssen im selben Format angegeben werden wie bei COLOR (Anweisung). Sie sind abhängig von der Farbtiefe, die mit SCREENRES eingestellt wurde.

Wenn alle Argumente ausgelassen werden, setzt VIEW alle Grenzen auf den Standard zurück.

Beispiel:

Screenres 640, 480
Dim bild As Any Ptr
Dim As Integer i, j, k

' einfaches Sprite erstellen
bild = ImageCreate(64, 64)
For i = 0 To 63 : For j = 0 To 63
  PSet bild, (i,j), (i\4) Xor (j\4)
Next j, i

' blaues Kreuz zur Demonstration:
' Der Bereich außerhalb der Clipping-Grenzen ist später nicht mehr betroffen
line (0, 0)-(639, 479), 1
line (639, 0)-(0, 479), 1
' Clipping-Grenzen setzen, mit blauem Rand
View (220,140)-(420,340),, 1

' Sprite bewegen
k = 0
Do
  i = 100* Sin(k*.02)+50
  j = 100* Sin(k*.027)+50
  ScreenSync
  ScreenLock
  Cls 1  ' löscht nur das Darstellungsfeld
  Put (i, j), bild, PSet
  ScreenUnlock
  k += 1
Loop Until Len(Inkey)
ImageDestroy bild

Unterschiede zu früheren Versionen von FreeBASIC:
In Versionen vor v0.16 hatte der Parameter 'Rand' keine Auswirkungen.

Unterschiede zu QB:

Siehe auch:
VIEW (Text), SCREENRES, WINDOW, PMAP, Grafik