Geometria przeciwziarnista

Geometria przeciwziarnista
Deweloperzy Maksym Szemanariew
Wersja stabilna
2.5.0 / 1 października 2006 ; 16 lat temu ( 01.10.2006 )
Napisane w C++
System operacyjny Międzyplatformowe
Typ Biblioteka grafiki
Licencja GPL
Strona internetowa agg.sourceforge.net/antigrain.com/index.html _ _ _ _ _ _  Edit this on Wikidata

Anti-Grain Geometry ( AGG ) to biblioteka graficzna do renderowania 2D napisana w C++ . Posiada antyaliasing i rozdzielczość subpikselową . Nie jest to biblioteka graficzna jako taka, ale raczej struktura, na której można zbudować bibliotekę graficzną.

Biblioteka jest niezależna od systemu operacyjnego i renderowana do abstrakcyjnego obiektu pamięci. Zawiera przykłady interfejsów do systemu X Window , Microsoft Windows , Mac OS X , AmigaOS , BeOS , SDL . Przykłady obejmują również SVG .

Projekt AGG wykorzystuje szablony C++ tylko na bardzo wysokim poziomie, a nie w dużym stopniu, aby osiągnąć elastyczność podłączania niestandardowych klas do potoku renderowania, bez konieczności sztywnej hierarchii klas, i umożliwia kompilatorowi wbudowanie wielu wywołań metod wysoka wydajność. Jak na bibliotekę o swojej złożoności, jest niezwykle lekka: nie ma zależności ponad standardowymi bibliotekami C++ i unika C ++ STL w implementacji podstawowych algorytmów. Niejawne interfejsy nie są jednak dobrze udokumentowane, co może sprawić, że proces uczenia się będzie dość kłopotliwy.

Podczas gdy wersja 2.5 AGG jest objęta licencją GNU General Public License , wersja 2 lub nowsza, AGG wersja 2.4 jest nadal dostępna na podstawie 3-klauzulowej licencji BSD i jest praktycznie taka sama jak wersja 2.5.

Historia

Aktywny rozwój bazy kodu AGG utknął w martwym punkcie w 2006 roku, mniej więcej w czasie wydania wersji 2.5, z powodu zmiany priorytetów jej głównego programisty i opiekuna Maxima Shemanareva. M. Shemanarev pozostał aktywny w społeczności aż do swojej nagłej śmierci w 2013 roku. Rozwój był kontynuowany na rozwidleniu bardziej liberalnej wersji v2.4 na SourceForge.net.

Stosowanie

  • System operacyjny Haiku używa AGG w swoim systemie okienkowym.
  • Jest to jeden z rendererów dostępnych do użycia w odtwarzaczu Gnash Flash Player firmy GNU .
  • Graficzna wersja interpretera języka Rebol wykorzystuje AGG do skalowalnej grafiki wektorowej w dialekcie DRAW.
  • Hilti używa go w niektórych swoich narzędziach do wykrywania prętów zbrojeniowych, takich jak PS 1000.
  • Matplotlib używa AGG jako swojego wewnętrznego silnika renderującego.
  • fpGUI Toolkit ma opcjonalny silnik renderujący zaplecza AggPas. Trwają prace nad ustawieniem AggPas jako domyślnego lub jedynego silnika renderującego dla fpGUI.
  • Mapnik , zestaw narzędzi, który renderuje mapy na stronie OpenStreetMap , używa AGG do całego renderowania map.
  • HTTPhotos używa AGG do skalowania zdjęć.
  • Pdfium, silnik renderujący PDF używany przez Google Chrome, korzysta z AGG, chociaż trwają prace nad zastąpieniem go przez Skia Graphics Engine .
  • Graphics Mill, zestaw SDK do przetwarzania obrazu .NET, wykorzystuje AGG jako silnik do rysowania.
  • Image-Line FL Studio , cyfrowa stacja robocza audio, od wersji 10.8 wydanej 30 września 2012 r., Używa AGG do rysowania.

Twórca

Głównym autorem biblioteki jest Maxim Shemanarev. 26 listopada 2013 Shemanariev (ur. 15 czerwca 1966 r. w Niżnym Nowogrodzie , Rosja) zmarł w wieku 47 lat. Zmarł nagle w swoim domu w Kolumbii w stanie Maryland (USA) rzekomo z powodu ataku epilepsji, który miał cierpi od jakiegoś czasu. Był absolwentem Państwowego Uniwersytetu Technicznego w Niżnym Nowogrodzie . Niewiele wiadomo o jego życiu osobistym. Wiadomo jednak, że był rozwiedziony, a jego matka żyła w chwili jego śmierci. Uwielbiał jeździć na nartach , snowboardzie (w Kolorado) i rolkach . Znajomi chwalili go za inteligentne umiejętności programistyczne.

Notatki

Linki zewnętrzne