Anti-Grain Geometry

Anti-Grain Geometry
Anti-Grain Geometry
Entwickler Maxim Shemanarev
Aktuelle Version 2.5.0
(1. Oktober 2006)
Programmier­sprache 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

  1. http://antigrain.com/license/
  2. Webpräsenz von AggPas, einer Free-Pascal-Portierung von AGG
  3. offizielle Webpräsenz von agg-sharp, einer C#-Portierung von AGG

Wikimedia Foundation.

Игры ⚽ Поможем решить контрольную работу

Schlagen Sie auch in anderen Wörterbüchern nach:

  • Anti-Grain Geometry — (AGG) is a high quality 2D rendering library written in C++. It features anti aliasing and sub pixel resolution.The library is operating system independent and renders to an abstract memory object. It comes with examples interfaced to the X… …   Wikipedia

  • Agg — Die Abkürzung AGG steht für: Allgemeines Gleichbehandlungsgesetz Amt für Grundstücke und Gebäude in der Schweiz den IATA Code von Angoram, Papua Neuguinea Anti Grain Geometry Appenzellische Gemeinnützige Gesellschaft Arbeitsgemeinschaft der… …   Deutsch Wikipedia

  • Vector graphics — This article is about computer illustration. For other uses, see Vector graphics (disambiguation). Example showing effect of vector graphics versus raster graphics. The original vector based illustration is at the left. The upper right image… …   Wikipedia

  • Subpixel rendering — is a way to increase the apparent resolution of a computer s liquid crystal display (LCD) by rendering pixels to take account the screen type s physical properties. It takes advantage of the fact that each pixel on a color LCD is actually… …   Wikipedia

  • Amiga software — covers a wide range of software for the Amiga computer, both productivity and games, both commercial and hobbyist. The Amiga software market was particularly active in the late 1980s and early 1990s but has since the period 1996/1999 dwindled… …   Wikipedia

  • Mapnik — Original author(s) Artem Pavlenko Developer(s) The Mapnik Contributors Stable release 0.7.1 / March 23, 2010; 18 months ago …   Wikipedia

  • Cairo (graphics) — infobox software name = Cairo developer = Carl Worth, Behdad Esfahbod frequently updated = yes programming language = C operating system = Cross platform genre = Graphics library license = GNU Lesser General Public License or Mozilla Public… …   Wikipedia

  • Lanczos resampling — ( Lanzosh ) is a multivariate interpolation method used to compute new values for any digitally sampled data. It is often used to resize digital images, but could be used for any other digital signal. In the case of digital image resizing, the… …   Wikipedia

  • Font hinting — is the use of mathematical instructions to adjust the display of an outline font so that it lines up with a rasterized grid. At small screen sizes, with or without antialiasing, hinting is critical for producing a clear, legible text for human… …   Wikipedia

  • Graphics library — A graphics library is a program designed to aid in rendering computer graphics to a monitor. This typically involves providing optimized versions of functions that handle common rendering tasks. This can be done purely in software and running on… …   Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”