LINUX.ORG.RU

Простейшая графическая библиотека для питона.


0

0

Хотелось бы что-то похожее на знаменитое qbasic'овское «screen 12» с возможностью рисовать примитивы вроде точек, линий и прямоугольников. Сохранение нарисованного в файл тоже не будет лишним.

Pygtk для таких целей слишком сложный (код генерации фрактала множества Мандельброта занял у меня 65 строк, из которых собственно генерация 20 строк, остальное — gtk), tkinter не умеет даже точку в окне поставить (а на каждый примитив создаёт объект). Pygame больше заточен под всякого рода анимации, чем под статичное рисование.

Есть ли либа, у которой вышеназванные недостатки отсутствуют?

★★★★★

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

Он больше нацелен на редактирование картинок, чем на рисование.

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

с возможностью рисовать примитивы вроде точек, линий и прямоугольников

Checked

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

Почти убедил. А на экране он может что-либо показывать?

PolarFox ★★★★★ ()

Так глянул, меньше всего сопутствующего кода в pygame получается. Потом можно навелосипедить свой костыль, а пока им обойдусь.

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

Не совсем понимаю, что ты под этим имеешь ввиду. Он сам должен окна в иксах рисовать? А так интеграция в кьют и тикль есть, вроде.

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

Ну да, интересует в первую очередь возможность вывода на экран и только потом сохранение в файл.

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

>Почти убедил. А на экране он может что-либо показывать?

Например так, пусть это и не так удобно.

http://www.pythonware.com/library/pil/handbook/image.htm

im.show()

Displays an image. This method is mainly intended for debugging purposes.

On Unix platforms, this method saves the image to a temporary PPM file, and calls the xv utility.

anonymous ()

В стеке gtk не рекомендую рисовать с самим gtk, так как слишком низкоуровнево. Для рисования в gtk приложениях надо юзать cairo. Там с рисованием все хорошо.

Но в целом не гарантирую что будет коротко. Cairo рисует весьма оригинальным способом. Вы отдельно модифицируете источник - цвет, градиент, картинку или другую поверхность, и отдельно трафарет - как бы фигура на бумаге вырезаная ножницами. Потом вы «продавливаете» источник через трафарет.

vertexua ★★★★☆ ()
$ eix pycairo
[I] dev-python/pycairo
     Available versions:  ~1.0.0[1] 1.4.12 1.8.2 ~1.8.4 ~1.8.6 1.8.8 {doc examples gtk numeric svg}
     Installed versions:  1.8.8(06:37:38 24.09.2009)(doc examples svg)
     Homepage:            http://cairographics.org/pycairo
     Description:         Python wrapper for cairo vector graphics library
KRoN73 ★★★★★ ()

libgd для Python? Правда, похоже, что сам libgd умер, но это не так уж и страшно.

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