Anti-Grain Geometry

From Wikipedia, the free encyclopedia

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 Window System, Microsoft Windows, Mac OS X, AmigaOS, BeOS, SDL. The examples also include an SVG viewer.

AGG makes heavy use of C++ generics: it relies on templates rather than class based interfaces. This gives it the flexibility to plug custom classes into the rendering pipeline, without requiring a rigid class hierarchy, and allows the compiler to inline many of the method calls for high performance. For a library of its complexity, it is remarkably lightweight, and it has no dependencies above the standard C++ libraries. The implicit interfaces are not well documented, however, and this can make the learning curve quite steep.

The Haiku Operating System uses AGG in its windowing system.

Until version 2.4 AGG was under the 3-clause BSD license. Beginning with version 2.5 it is under the GNU General Public License, version 2 or greater, but 2.4 remains available.

It is one of the renderers available for use in GNU’s Gnash Flash player.

[edit] External links

Languages