Topic : TOS - das Betriebssystem Author : Version : tos.hyp (5. März 2013) Subject : Programmieren/Atari Nodes : 3001 Index Size : 93602 HCP-Version : 5 Compiled on : Atari @charset : atarist @lang : @default : Titel @help : @options : +g -i -s +x +zz -t4 @width : 70 View Ref-File6.20 Seedfill TOS Name: »Seedfill« Line-A Nummer: $A00F Binding: Bindings für seed_fill Beschreibung: Diese Line-A Funktion füllt einen Bereich mit einer Farbe aus und entspricht damit der VDI Funktion v_contourfill. Im ersten Word von ptsin (ptsin[0] in C) wird die X- Koordinate und im zweiten Word von ptsin (ptsin[1] in C) wird die Y-Koordinate des Startpunkts übergeben. In das erste Wort von intin (intin[0] in C) wird das Mode-Wort geschrieben. Ist das Mode-Wort größer 0, gibt es die Farbe der Umgrenzung an, bis zu der gefüllt werden soll. Ist das Mode-Wort kleiner 0, besteht die Umgenzung aus allen Pixeln, die nicht die Farbe des Startpunkts haben. Die folgenden Line-A Variablen werden benutzt: Variable Bedeutung fill_abort Dies ist die Adresse eine Funktion, die am Ende jeder Zeile aufgerufen wird. Liefert diese Funktion in D0 den Wert 0, wird mit dem Füllen fortgefahren, ansonsten abgebrochen. patptr Zeiger auf ein Feld mit 16 Bit Linienmustern. patmsk Anzahl Linienmuster - 1. In Abhängigkeit von der y-Koordinate wird nun aus dem Feld mit den Linienmustern eines ausgewählt. Der Index des verwendeten Linienmusters läßt sich durch (y mod (patmsk + 1)) berechnen. Durch die Angabe mehrerer Linienmuster und mehrmaliges Aufrufen dieser Funktion für aufeinanderfolgende Zeilen lassen sich leicht auch komplexe Muster zeichnen. multifill 0, wenn das Muster nur eine Ebene hat und 1 für mehrere Ebenen. wrt_mode Schreibmodes, es sind die folgenden Modie möglich: REPLACE 0 Replace TRANS 1 Transparent (OR) XOR 2 Inverse (XOR) INVERS 3 Inverse Transparent (XOR mit not(LN_MASK)) clip 1 wenn Clipping gewünscht wird, 0 sonst. xmn_clip X-Koordinate der linken oberen Ecke des Clipping Bereichs, wenn Clipping eingeschaltet ist. ymn_clip Y-Koordinate der linken oberen Ecke des Clipping Bereichs, wenn Clipping eingeschaltet ist. xmx_clip X-Koordinate der rechten unteren Ecke des Clipping Bereichs, wenn Clipping eingeschaltet ist. ymx_clip Y-Koordinate der rechten unteren Ecke des Clipping Bereichs, wenn Clipping eingeschaltet ist. Ergebnis: Die Funktion liefert keinen Returnwert. Verfügbar: Alle TOS-Versionen. Querverweis: Binding v_contourfill