Антизернистая геометрия
Эта статья нуждается в дополнительных цитатах для проверки . ( октябрь 2008 г. ) |
Разработчик(и) | Максим Шеманарев |
---|---|
Стабильная версия | 2.5.0 / 1 октября 2006 г |
Написано в | С++ |
Операционная система | Кросс-платформенный |
Тип | Графическая библиотека |
Лицензия | лицензия GPL |
Веб-сайт | агг ![]() |
Anti-Grain Geometry ( AGG ) — это графическая библиотека 2D-рендеринга, написанная на C++ . Он имеет сглаживание и субпиксельное разрешение . Это не графическая библиотека как таковая, а скорее платформа для создания графической библиотеки.
Библиотека не зависит от операционной системы и визуализируется в абстрактный объект памяти. Он поставляется с примерами, связанными с X Window System , Microsoft Windows , Mac OS X , AmigaOS , BeOS , SDL . Примеры также включают средство просмотра SVG .
В конструкции AGG шаблоны C++ используются только на очень высоком уровне, а не широко, чтобы обеспечить гибкость подключения пользовательских классов к конвейеру рендеринга, не требуя жесткой иерархии классов, и позволяет компилятору встраивать многие вызовы методов для высокая производительность. Для библиотеки такой сложности она удивительно легка: у нее нет зависимостей от стандартных библиотек C++, и она позволяет избежать C++ STL при реализации основных алгоритмов. Однако неявные интерфейсы плохо документированы, и это может сделать процесс обучения весьма затруднительным.
Хотя AGG версии 2.5 лицензируется под лицензией GNU General Public License версии 2 или выше, AGG версии 2.4 по-прежнему доступен под лицензией BSD из 3 пунктов и практически не отличается от версии 2.5.
История
[ редактировать ]Активное развитие кодовой базы AGG застопорилось в 2006 году, примерно во время выпуска версии 2.5, из-за смены приоритетов ее главного разработчика и сопровождающего Максима Шеманарева. М. Шеманарев оставался активным членом сообщества до своей внезапной смерти в 2013 году. Продолжалась разработка версии 2.4 с более свободной лицензией на SourceForge.net. [1]
Использование
[ редактировать ]- Операционная система Haiku использует AGG в своей оконной системе.
- Это один из средств рендеринга, доступных для использования в GNU Flash от проигрывателе Gnash .
- Графическая версия интерпретатора языка Rebol использует AGG для масштабируемого диалекта векторной графики DRAW.
- Hilti использует его в некоторых своих инструментах обнаружения арматуры, таких как PS 1000.
- Matplotlib использует AGG в качестве канонического средства визуализации интерактивных пользовательских интерфейсов. [2]
- В fpGUI Toolkit имеется дополнительный механизм внутреннего рендеринга AggPas. [3] Ведется работа над тем, чтобы сделать AggPas механизмом рендеринга по умолчанию или единственным для fpGUI.
- Mapnik , набор инструментов, который визуализирует карты на веб-сайте OpenStreetMap , использует AGG для рендеринга всех карт. [4]
- HTTPhotos использует AGG для масштабирования фотографий.
- Pdfium, механизм рендеринга PDF, используемый Google Chrome , использует AGG, [5] продолжается хотя работа по замене этого на Skia Graphics Engine . [6]
- Graphics Mill, пакет SDK для обработки изображений .NET, использует AGG в качестве механизма рисования. [7]
- Image-Line FL Studio , рабочая станция цифрового аудио, начиная с версии 10.8, выпущенной 30 сентября 2012 года, использует AGG для рисования. [8]
- Native Instruments используют AGG в качестве пользовательского интерфейса. Компрессоры Supercharger и Supercharger GT от
Автор
[ редактировать ]Главным автором библиотеки Шеманарев был Максим . 26 ноября 2013 года Шеманарев (род. 15 июня 1966, Нижний Новгород , Россия) был объявлен мертвым в возрасте 47 лет в своем доме в Колумбии , штат Мэриленд (США). Он умер внезапно, предположительно от эпилептического припадка , которым он страдал некоторое время. [примечание 1] [9] [10] Он окончил Нижегородский государственный технический университет . О его личной жизни известно мало. Однако известно, что он был разведен и на момент его смерти его мать была жива. Раньше он любил кататься на лыжах , сноуборде (в Колорадо) и роликовых коньках . [примечание 2] Друзья хвалили его за умные навыки программирования. [9]
Примечания
[ редактировать ]- ^ Информация в основном взята из российского интернет-форума RSDN, который он посещал, и его личной страницы в ВКонтакте.
- ↑ Об этом свидетельствуют некоторые видеоролики, которые он опубликовал на YouTube в марте 2012 года.
Ссылки
[ редактировать ]- ^ «Библиотека антизерновой геометрии» . 28 мая 2021 г.
- ^ «Документация Matplotlib — Использование Matplotlib — Рисунки и серверные части — Серверные части» . Проверено 26 сентября 2023 г.
- ^ «Новости fpGUI Toolkit» . Архивировано из оригинала 23 апреля 2012 года . Проверено 14 мая 2013 г.
- ^ «Мапник вики» .
- ^ «Источник PDF-файла» . Проверено 23 декабря 2016 г.
- ^ «11 — Поддержка Skia — pdfium» . Проверено 23 апреля 2022 г.
- ^ «Документация Graphics Mill» . Проверено 16 августа 2015 г.
- ^ «История — FL Studio 10.8 (бета)» . Архивировано из оригинала 3 мая 2019 года . Проверено 4 мая 2019 г.
- ^ Перейти обратно: а б «Максим Шеманарев aka McSeem2, 1966-2013 — О жизни — RSDN» [Максим Шеманаев aka McSeem2, 1966-2014 — О жизни — RSDN]. 28 ноября 2013. Архивировано из оригинала 4 марта 2016 года . Проверено 3 октября 2021 г.
- ^ «РИП Максим Шеманарев» . вектор-agg-general.narkive.com . Проверено 3 октября 2021 г.
Внешние ссылки
[ редактировать ]- Обновленная версия версии 2.4 , сохраняющая исходную лицензию BSD.
- Обновленная версия версии 2.6 на GitHub , поддерживающая исходную лицензию BSD.
- agg-sharp — это порт AC# библиотеки C++.
- AggPas — это порт библиотеки C++ на Object Pascal.
- AggPasMod — это модернизированный порт библиотеки C++ на Object Pascal.
- AntiGrainRT — это оболочка WinRT для Магазина Windows и Windows Phone.