LINUX.ORG.RU

Вышла Asymptote 1.00


0

0

Asymptote -- мощный язык описания векторной графики, обеспечивающий естественную, основанную на координатах среду для технических чертежей. Метки и формулы набираются при помощи LaTeX, что обеспечивает высококачественный PostScript-вывод.

Страница проекта: http://asymptote.sf.net/

Подробный ChangeLog: http://asymptote.sourceforge.net/Chan...

>>> Подробности

★★★★★

Проверено: Shaman007 ()

Да, я ее давненько приметил...

Отличный проект, рекомендую!

annoynimous ★★★★★
()

Реальный руль!

anonymous
()
Ответ на: комментарий от svyatogor

>посмотрел примеры - впечатляет.

Мне тоже очень понравилось, но с latex так и не смог заставить работать. Генерит пустое место и больше ничего.

olegk ★★
()
Ответ на: комментарий от karlik

>Чем это лучше метопоста?

Не знаю, но помойму проще разобраться.

olegk ★★
()
Ответ на: комментарий от karlik

> Чем это лучше метопоста?

Основным отличием автор считает синтаксис. Хотя сравнивать суто синтаксис, это как сравнивать красоту девушек.

shimon ★★★★★
() автор топика
Ответ на: комментарий от karlik

>Чем это лучше метопоста?

Недавно первый раз серьезно поюзал ЛаТеХ для лабы по физике. Поковыряв на скорую руку подобные софтины, остановился на metapost и собственно asymptote. Как это не странно, но в Дебиан не входил пакет emp (может ненашел, но искал долго). Поставил руками - работать незахотело. Асимптота же встала сразу, код мне понравился, результат тоже...

AiLr ★★
()
Ответ на: комментарий от AiLr

> Как это не странно, но в Дебиан не входил пакет emp (может ненашел, но искал долго).

А что это за пакет? mpost это составная часть LaTeX ставится вместе с tetex.

$ dpkg -S /usr/bin/mpost

tetex-bin: /usr/bin/mpost

Evgueni ★★★★★
()

Поглядел документацию и примеры.

IMHO попытка переписать MetaPost (синтаксис для путей просто один в один) на С при которой были утрачены некоторые ключевые особенности META. Всё, что можно сделать в Asymptote можно сделать в MetaPost, а обратное (на сколько я понял из описания и примеров) не верно. Аналогов цикла MetaPost, который повторяет текст, а не команды (как я понял) нет.

MetaPost есть проблемы, но IMHO достоинств у MetaPost пока сильно больше чем у Asymptote.

Возможно на каких-то операциях Asymptote будет быстрее - но это ещё надо проверить. Синтаксис IMHO избыточен. В META всё сделано для уменьшения размеров кода.

P.S. В любом случае больше программок хороших и разных.

Evgueni ★★★★★
()
Ответ на: комментарий от Evgueni

> Всё, что можно сделать в Asymptote можно сделать в MetaPost,

Однако трехмерные фигуры в Asymptote рисовать куда как проще, чем в Metapost (и я вообще сомневаюсь, что в Metapost возможны трехмерные пути).

> а обратное (на сколько я понял из описания и примеров) не верно.

А с этого момента подробнее, пожалуйста. Что понимается под "что можно сделать"? "Цикл, который повторяет текст" возможен вследствие того, что Metapost это макроязык. В Asymptote он заменяется на обычный цикл (скажем, добавляющий текст к хвосту предыдущего).

anonymous
()
Ответ на: комментарий от anonymous

>> Всё, что можно сделать в Asymptote можно сделать в MetaPost,

>Однако трехмерные фигуры в Asymptote рисовать куда как проще, чем в Metapost (и я вообще сомневаюсь, что в Metapost возможны трехмерные пути).

Есть соответствующие расширения - я не разбирался с ними подробнее. Т.е. трёхмерию не пробовал не там и не там. Простейшие "3D" картинки делал с помощью трансформации slanted.

>> а обратное (на сколько я понял из описания и примеров) не верно.

>А с этого момента подробнее, пожалуйста. Что понимается под "что можно сделать"? "Цикл, который повторяет текст" возможен вследствие того, что Metapost это макроязык. В Asymptote он заменяется на обычный цикл (скажем, добавляющий текст к хвосту предыдущего).

Вы всё правильно поняли. Я, похоже, не корректно выразился. Действительно можно путём добавления, но код удлиняется и запись становится "не естественной". Хотя на вкус и цвет.

Прелесть MetaPost именно в разумных сокращениях, которые в Asymptote не реализованы и вряд-ли когда-то будут, потому что такое надо продумывать в самом начале. И это не смотря на то, что subj писался c MetaPost почти под копирку.

С уважением Евгений

Evgueni ★★★★★
()
Ответ на: комментарий от Evgueni

Насчет emp. На сколько я понял чтобы включить кусок на mp в .tex файл нужен этот самый пакетик - usepackage{mflogo,graphicx,emp} (вставляется коммандой begin{empfile} ...), а его-то и нету, хотя сам mp стоит. Если в чем-то ошибся - сильно не пинайте ;)

AiLr ★★
()
Ответ на: комментарий от AiLr

Про это не знаю. Я не совсем понимаю зачем включать mp в tex.

Технология примерно такая: пишется .mp -> mpost -> получается PostScript без внёдрённых шрифтов - вот это уже можно вставлять в .tex через includegraphics

Подробнее технологию я описывал, например здесь: http://bsd.opennet.ru/base/rus/metapost_latex_rus.txt.html

Evgueni ★★★★★
()
Ответ на: комментарий от Evgueni

> Простейшие "3D" картинки делал с помощью трансформации slanted.

Если нужно нарисовать, скажем, пирамиду для учебника геометрии, то конечно можно обойтись и двумерными средствами (вручную вычислить проекцию на плоскость рисунка). Но сколько-нибудь сложные поверхности так рисовать уже неудобно.

> Прелесть MetaPost именно в разумных сокращениях, которые в Asymptote не реализованы и вряд-ли когда-то будут, потому что такое надо продумывать в самом начале. И это не смотря на то, что subj писался c MetaPost почти под копирку.

В Asymptote своя прелесть - удобная объектная модель и более простая расширяемость (скажем, при использовании того же трехмерного модуля пользователь оперирует теми же преобразованиями (shift, rotate, reflect), что и обычно, а в Metapost'е синтаксис меняется).

А то, что Asymptote написана под копирку, очень удобно. Если чего-то не хватает (мне, например, не хватало buildcycle), можно чуть ли не буквально скопировать из Metapost'а.

anonymous
()
Ответ на: комментарий от anonymous

>> Простейшие "3D" картинки делал с помощью трансформации slanted.

>Если нужно нарисовать, скажем, пирамиду для учебника геометрии, то конечно можно обойтись и двумерными средствами (вручную вычислить проекцию на плоскость рисунка). Но сколько-нибудь сложные поверхности так рисовать уже неудобно.

В MetaPost есть соответствующие расширения - то, что есть в примерах Asymptote я видел и в примерах MetaPost, причём трёхмерия была гораздо сложнее. Но в любом случае для рисования поверхностей надо выбирать другие инструменты, которые для этого предназначены.

Просто нарисовать 3D тело это просто, отсечение невидимых частей уже сложнее - и то, и другое реализовано в MetaPost через расширения. Далее уже следуют отражения, расстановка источников света и тому подобное - но для этого уже векторные рисовалки не годятся.

>В Asymptote своя прелесть - удобная объектная модель и более простая расширяемость

Очень спорное утверждение. На текущий момент MetaPost не просто прост - он очень прост (не путать с тривиален) - один человек вполне может освоить весь код программы за конечный промежуток времени. MetaPost при желании легко изменяется и расширяется. MetaPost'у не хватает человека уровня Лампорта и К, который бы стал собирать пакета для него, как это было сделано для TeX.

Evgueni ★★★★★
()
Ответ на: комментарий от Evgueni

> На текущий момент MetaPost не просто прост - он очень прост

На вкус и на цвет, конечно, но Asymptote мне показался проще. Или же мне достаточно тех высокоуровневых средств, которые Asymptote предлагает, а аналоги для Metapost я искать не пробовал.

anonymous
()
Ответ на: комментарий от anonymous

Я немного не то имел в виду: относительно просто модифицировать сам MetaPost и основные макрорасширения к ниму - это под силу одному человеку.

По поводу языка - он не сложнее того, что есть Asymptote - зато в отличии от топика при некотором развитии навыков MetaPost позволяет значительно сокращать размер кода картинок.

Код Asymptote можно один в один перенести в код MetaPost, а вот обратное неверно - код придётся удлинять.

Синтаксис Asymptote притягивает своей "знакомостью" - это как называть ttf шрифты от M$ хорошими, хотя они просто знакомые.

Evgueni ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.