- Anti-Grain Geometry
-
Anti-Grain Geometry Entwickler Maxim Shemanarev Aktuelle Version 2.5.0
(1. Oktober 2006)Programmiersprache C++ Lizenz GPL (freie Software) antigrain.com Anti-Grain Geometry (kurz AGG) ist in der Informatik eine freie, plattformunabhängige Grafikbibliothek mit Subpixel-Genauigkeit. Sie ist von Maxim Shemanarev (McSeem) in C++ geschrieben und als freie Software unter den Bedingungen der Version 2 oder höher der GNU General Public License (GPL) verfügbar.[1]
Es existiert jeweils eine Portierung für Free Pascal[2] und eine für C#[3].
Inhaltsverzeichnis
Merkmale
Die Bibliothek zeichnet sich vor allem dadurch aus, dass sie sehr flexibel gestaltet ist und auf sehr vielfältige Weise verwendet und erweitert werden kann. Die Bibliothek ist vollkommen im C++ Code verfügbar und wird normalerweise direkt in das Anwendungsprogramm compiliert. Zudem ist keinerlei Hardwareschnittstelle definiert, denn sämtliche Operationen werden in einem frei wählbaren Puffer durchgeführt. Dabei ist es völlig unerheblich ob es sich dabei um den Framebuffer einer Grafikkarte oder einfach nur um einen zuvor zugewiesenen Speicher handelt. Diese Eigenschaften machen AGG vollkommen hardwareunabhängig. Die Bibliothek kann in der Regel für jeden beliebigen Prozessor ohne Anpassungen kompiliert werden.
Trotz dieser Flexibilität ist die Bibliothek ausgesprochen schnell und schlank und bietet qualitativ hochwertiges Antialiasing.
Schichten-Modell
AGG ist in mehreren Schichten vom Pixel-Renderer über Zeilenoperationen bis hin zu elementaren Zeichenoperationen aufgebaut wodurch es möglich ist, in diesem Ablauf an jeder beliebigen Stelle einzugreifen. Dieses Konzept erschwert allerdings anfangs das Erlernen der Bibliothek.
Geschichte
Ursprünglich wurde AGG entwickelt, um Rastergrafiken mit hoher Qualität transformieren und in jedem beliebigen Winkel drehen zu können. Inzwischen bietet die Bibliothek viele Möglichkeiten der Vektorgrafik. 2002 wurde Version 2.0 freigegeben. Bis Version 2.4 wurde AGG unter der dreiklausligen (modifizierten) BSD-Lizenz veröffentlicht, mit Version 2.5 wurde im Oktober 2006 auf die GNU General Public License umgestellt.
Verwendung
Das Betriebssystem Haiku nutzt AGG in seinem Fenstersystem.
In GNUs freiem Flash-Player gnash wird es als einer der verfügbaren Renderer eingebunden.
Die graphische Version des Interpreters der Programmiersprache REBOL benutzt AGG für die Verarbeitung von Vektorgraphikdaten in dem SVG-Dialekt DRAW.
Weblinks
Quellen
- ↑ http://antigrain.com/license/
- ↑ Webpräsenz von AggPas, einer Free-Pascal-Portierung von AGG
- ↑ offizielle Webpräsenz von agg-sharp, einer C#-Portierung von AGG
Kategorien:- Grafikbibliothek
- Freie Grafiksoftware
Wikimedia Foundation.