Asymptote (Asymptote)

Перейти к навигации Перейти к поиску
Asymptote
Логотип программы Asymptote
Скриншот программы Asymptote
Тип язык описания векторной графики
Написана на C++-подобный
Операционная система Кроссплатформенное программное обеспечение
Первый выпуск 2004
Последняя версия 2.91 (15 августа 2024)
Репозиторий github.com/vectorgraphic…
Лицензия LGPL v3
Сайт asymptote.sourceforge.net
Логотип Викисклада Медиафайлы на Викискладе

Asymptote — язык описания векторной графики, предназначенный для создания технических рисунков. Изначально разработчиками предполагалось создать средство, которое бы стало стандартом представления иллюстраций в LaTeX. Тем не менее, asymptote позволяет генерировать графические изображения независимо от системы TeX.

В качестве выходных форматов доступны: PDF, PostScript, SVG и 3D PRC.

Описание языка

[править | править код]

Язык с C++-подобным синтаксисом, созданный под влиянием MetaPost.

Примеры использования

[править | править код]

Следующий исходный код позволяет нарисовать график функции Хевисайда при помощи языка asymptote.

График функции Хевисайда, нарисованный при помощи языка asymptote
 import graph;
 import settings;
 outformat="pdf";
 
 size(300,300);
 
 // Function.
 real[] x1 = {-1.5,0};
 real[] y1 = {0,0};
 real[] x2 = {0,1.5};
 real[] y2 = {1,1};
 draw(graph(x1,y1),red+2);
 draw(graph(x2,y2),red+2);
 
 draw((0,0)--(0,1),red+1.5+linetype("4 4"));
 fill( circle((0,1),0.035), red);
 filldraw( circle((0,0),0.03), white, red+1.5);
 
 // Axes.
 xaxis( Label("$x$"), Ticks(new real[]{-1,-0.5,0.5,1}), Arrow);
 yaxis( Label("$y$"), Ticks(new real[]{0.5,1}), Arrow, ymin=-0.18, ymax=1.25);
 // Origin.
 labelx("$O$",0,SW);

asymptote в различных операционных системах

[править | править код]

В настоящее время asymptote поддерживается большинством операционных систем:

  • Все 32-разрядные версии Microsoft Windows
  • Все BSD платформы (FreeBSD/NetBSD/OpenBSD/Apple Mac OS X)
  • Все POSIX-платформы

Многие дистрибутивы GNU/Linux (Debian, Ubuntu и прочие) содержат asymptote в основных репозиториях.