AcornSearch - Acorn and RISC OS information searching
RISC OS Search
containing
"Nutty quip goes here!"
Home  |  About  |  Filebase Archive  |  StrongHelp Manuals  |  Newsgroups  |  Module Database
Inhalt   <<   <   >   >>   Index

Anweisung zur Definition der Grafikfarben und -aktionen.

Syntax:          GCOL [Ausdruck1,]Ausdruck2 [TINT Ausdruck3]

Argumente:     GCOL definiert die Farbe und den Plot-Modus, die in nachfolgenden Grafikoperationen zur Anwendung gelangen.

          Ausdruck1, wenn vorhanden, ist eine Ganzzahl zwischen 0 und 255 welche die Plot-Aktion definiert, d.h. die Art und Weise wie die Grafikfarbe (Ausdruck2) mit dem bereits auf dem Bildschirm befindlichen Inhalt beim Zeichnen von Punkten, Linien usw. kombiniert wird. Der elementare Wertebereich liegt zwischen 0 und 7, wie nachstehend gezeigt:

          Aktion     Wirkung
          0          Farbe Ausdruck2 auf dem Bildschirm deponieren
          1          Farbe auf dem Bildschirm mit Ausdruck2 über OR kombinieren
          2          Farbe auf dem Bildschirm mit Ausdruck2 über AND kombinieren
          3          Farbe auf dem Bildschirm mit Ausdruck2 über EOR kombinieren
          4          Aktuelle Farbe ohne Rücksicht auf Ausdruck2 umkehren
          5          Keinerlei Veränderung des Bildschirms
          6          AND-Kombination der Farbe auf dem Bildschirm mit NOT Ausdruck2
          7          OR-Kombination der Farbe auf dem Bildschirm mit NOT Ausdruck2

          Obwohl Aktion 5 den Bildschirm nicht verändert, so wird doch auf jedes Pixel zugegriffen, als wenn eine Operation durchgeführt würde, d.h. diese Aktion dauert genauso lange wie die übrigen.

          Wenn man der Aktionsnummer n*16 hinzuaddiert, dann werden statt einfacher Farben Farbmuster verwendet. n ist der Bereich 1 bis 4 für die vier Grundmuster bzw. 5 für ein großes Muster, welches sich aus einer Aufreihung der vier Grundmuster ergiebt. VDU 23,2 bis 5 wird zum Definieren der Farbfüllmuster verwendet. Bei einer Neudefinition des aktuell ausgewählten Musters wird es sofort aktiv.

          Wenn der Aktionsnummer 8 hinzuaddiert wird, dann wird an Stellen, wo das Farbmuster die aktuelle Grafikhintergrundfarbe enthält, nichts gezeichnet, d.h. diese Farbe wird durchsichtig. Nehmen wir an, Sie haben ein vierfarbiges Display und die aktuelle Hintergrundfarbe ist 129 (rot).
          Wenn Sie jetzt Muster 1 als Vordergrundfarbe wählen (GCOL 16,0), dann wird ein gefülltes Rechteck rot-gelb, da Muster 1 aus abwechselnd roten und gelben Pixeln besteht. Wenn die Farbe jedoch mit GCOL 24,0 (Plot-Aktionsnummer plus 8) gesetzt wird, dann erscheint ein gefülltes Rechteck in gelber Farbe, mit durchsichtigen 'Löchern' an den Stellen, wo rote Pixel gesetzt wurden.

          Die Addition von 8 zur Aktionsfarbe bewirkt auch, daß das Sprite-Plotting die Durchsicht-Maske verwendet, wenn eine solche vorhanden ist. Siehe das Kapitel zu den Sprites im BBC Basic Handbuch für eine genauere Beschreibung.

          Wenn Ausdruck1 ausgelassen wird, wird 0 benutzt, das heißt, die gegebene Farbe wird auf dem Bildschirm aufgetragen.

          Die Farbnummer, Ausdruck2, liegt im Bereich 0 bis 255. Werte von 0 bis 127  werden zum Setzen der Grafi-Vordergrundfarbe, 128 bis 255 zum Setzen der Grafik-Hintergrundfarbe. So setzt z.B. 129 die Hintergrundfarbe auf 129-128, also 1. Die Nummer wird als MOD der Anzahl der Farben des aktuellen Modus behandelt, also als 2, 4, 16 oder 64. So ist der Farbbereich in 256-Farben-Modi 0 bis 63 (oder 128 bis 191 für den Hintergrund).

          Der TINT-Wert, wenn vorhanden, wird benutzt, um aus dem 64 effektiv verfügbaren Farben durch Beigabe von Weiß die 256 Farbtönungen zu erzeugen (dies geschieht durch Beimischen von einem aus 4 möglichen 'Weiß-Kontingenten'). Ausdruck3 liegt im Bereich 0 bis 255, wobei momentan nur die Werte 0, 64, 128 und 192 signifikant sind.

          Hinweis: WIMP-Basierende Programme sollten den Aufruf Wimp_SetColour zum Ändern von Farben benutzen, nicht GCOL.

Beispiele:        
GCOL 2 : DRAW 100,100     : REM Linie in Farbe 2 Zeichnen
          
GCOL 4,128 : CLG          : REM Grafikfenster umkehren
          
GCOL 1,2               : REM Bildschirm über OR mit Farbe 2 kombinieren
          
GCOL 18 TINT 128

[sh-index] Back to list of manuals