Antialiasing

Lines durch eine Reihe von Pixeln, die am Display stehen muss, sind angenähert Koordinaten. Sie können daher gezackt, erscheinen besonders Linien, die fast horizontalen oder nahezu senkrecht stehen. Diese Zackigkeit heißt Aliasing. Antialiasing ist die Glättung von Linien und Kurven. Es reduziert die zackigen, Treppen-für-Schritt-Auftritt jede Zeile, die nicht genau horizontal oder vertikal. uC / GUI verschiedene Antialiasing-Qualitäten, Antialiasing Schriften und hochauflösender unterstützt Koordinaten. Unterstützung für Anti-Aliasing ist ein eigenständiges Software-Element und ist nicht im uC / GUI Basispaket enthalten.
Einführung

Antialiasing glättet Kurven und diagonale Linien durch "Vermischung" mit der Hintergrundfarbe, die von den Vordergrund. Je höher die Anzahl der Abstufungen zwischen den Vordergrund-und Hintergrundfarben, desto besser ist das Ergebnis Antialiasing verwendet (und je länger die Rechenzeit).

Quality of Antialiasing
Die Qualität des Antialiasing wird durch die Routine GUI_AA_SetFactor gesetzt, erklärte später in diesem Kapitel. Für eine Vorstellung von der Beziehung zwischen dem Antialiasing-Faktor und das entsprechende Ergebnis, werfen Sie einen Blick auf das Bild abgebildet. Die erste Zeile ist ohne Antialiasing (Faktor 1) gezogen. Die zweite Linie wird gezeichnet Antialiasing mit Faktor 2. Dies bedeutet, dass die Zahl der Abstufungen vom Vordergrund zum Hintergrund 2 x 2 = 4 ist. Die nächste Zeile ist mit einem Antialiasing-Faktor von 3 gezogen, so gibt es 3 x 3 = 9 Schattierungen, und so weiter. Factor 4 sollte für die meisten Anwendungen ausreichend. Die Erhöhung des Antialiasing-Faktor weiter verbessert nicht das Ergebnis erheblich, sondern erhöht die Rechenzeit.

Antialiasing-Fonts

Zwei Arten von Antialiasing Schriften, von geringer Qualität (2bpp) und hochwertigen (4bpp), werden unterstützt. Die Routinen erforderlich, um diese Schriftarten angezeigt werden automatisch verlinkt, wenn mit ihnen. Die folgende Tabelle zeigt die Auswirkungen auf die Zeichnung, das Zeichen "C" ohne Antialiasing und mit beiden Arten von Antialiasing Schriften:
Schriftart Schwarz auf Weiß Weiß auf schwarz
Standard
(Ohne Antialiasing)
1 bpp
2 Töne
Low-Qualität
(Geglättet)
2 bpp
4 Farben
Hochwertige
(Geglättet)
4 bpp
16 Farbtöne

Antialiasing-Schriftarten können mit dem uC / GUI Font Converter erstellt werden. Der allgemeine Zweck der Verwendung von Schriften geglättet wird, um das Aussehen des Textes zu verbessern. Während die Auswirkungen der Verwendung von hochwertigen Antialiasing wird mehr optisch ansprechender als geringer Qualität, Rechenzeit und Speicherbedarf wird anteilig zu erhöhen. Low-Qualität (2bpp) Schriftarten erfordern zweimal die Erinnerung an non-Antialiasing (1bpp) Schrifttypen; hochwertige (4bpp) Schriftarten erfordern viermal den Speicher.

High-Resolution-Koordinaten

Bei der Erstellung der Artikel Antialiasing, koordiniert die gleichen sind wie für reguläre (non-Antialiasing) Zeichnung Routinen verwendet. Dies ist der Standardmodus. Sie brauchen nicht auf die Antialiasing-Faktor in der Funktion Argumente zu berücksichtigen. Zum Beispiel, um eine Linie von Antialiasing zu ziehen (50, 100) bis (100, 50) würden Sie schreiben:
GUI_AA_DrawLine (50, 100, 100, 50);

Der uC / GUI hochauflösende Funktion können Sie den virtuellen Raum durch die Antialiasing-Faktor und Ihre Display-Größe bestimmt. High-Resolution-Koordinaten müssen mit der Routine GUI_AA_EnableHiRes aktiviert werden, und kann mit GUI_AA_DisableHiRes deaktiviert werden. Beide Funktionen werden später in diesem Kapitel erläutert. Der Vorteil der Verwendung von hochauflösenden koordiniert ist, dass Produkte nicht nur bei körperlichen Positionen Ihrer Anzeige gebracht werden, sondern auch "zwischen" ihnen. Die virtuelle

Raum eines hochauflösenden Pixel unten auf der Grundlage eines Antialiasing Faktor 3 dargestellt:

So zeichnen Sie eine Linie von Pixel (50, 100) bis (100, 50) in hoher Auflösung mit Antialiasing-Modus Faktor 3, würden Sie schreiben:
GUI_AA_DrawLine (150, 300, 300, 150);

API-Referenz: Antialiasing

Die nachstehende Tabelle listet die verfügbaren Routinen in der Antialiasing-Paket, in alphabetischer Reihenfolge in ihren jeweiligen Kategorien.
Routine Erläuterung
Control-Funktionen
GUI_AA_DisableHiRes Disable High-resoluton Koordinaten.
GUI_AA_EnableHiRes Enable hochauflösende Koordinaten.
GUI_AA_GetFactor Liefert die aktuelle Antialiasing Faktor.
GUI_AA_SetFactor Stellen Sie die aktuelle Antialiasing Faktor.
Zeichenfunktionen
GUI_AA_DrawArc Zeichne eine Antialiasing Bogen.
GUI_AA_DrawLine Zeichnen einer Linie geglättet.
GUI_AA_DrawPolyOutline Zeichnen Sie die Umrisse eines Antialiasing Polygon.
GUI_AA_FillCircle Zeichne eine Antialiasing Kreis.
GUI_AA_FillPolygon Zeichnen Sie ein Polygon gefüllt und geglättet.

Members Login
username
password
New MemberRegister Here
Newsletter Signup