2013-08-02 2 views
17

Я ищу Python совместимую трехмерную графику. В основном я хотел бы иметь возможность рисовать линии и просматривать их в 3D. У меня буквально нет опыта в этой области, и я ищу знания и учебные пособия.python 3D визуализация и графика

Я лучше всего изучаю программирование на экспериментах. Итак, какие пакеты мне нужно делать 3-D графики? Мне очень нравится использовать emacs, поэтому, если у вас есть эти предложения, это будет потрясающе!

В итоге:

  1. Какие пакеты мне нужно для 3D-графики в питона.
  2. Обратите внимание, что я использую Ubuntu 12.04 LTS и Emacs 24.3

ответ

12

Наиболее распространенный способ интеграции в реальном времени 3D-графики использует OpenGL библиотеку. OpenGL и графика в реальном времени - большая тема, но сосредоточиться на чем-то вроде рисования 3D-линий не должно быть слишком сложно. Наручники существуют для питона http://pyopengl.sourceforge.net/

GLUT - это, вероятно, лучше всего подходит для обеспечения X платформы кадрирование и настройка контекста, и включается в состав указанных привязок.

OpenGL - существует несколько версий, для вашего применения, немедленный режим, наследие, вероятно, приемлемо.

Вот некоторые ссылки для обучения - не чувствуйте себя обязанным читать их все - выберите темы, имеющие отношение к вам.

+0

Большое спасибо! Я помню около двух лет назад, когда я начал изучать OpenGL (после того, как я выучил C++), и я никогда не получал нигде, потому что я был недостаточно техничным. Я действительно помню, как слышал о GLUT, но я никогда не знал, что это было! – CodeKingPlusPlus

+0

@CodeKingPlusPlus start small - я уверен, вы можете получить 3D-рендеринг довольно быстро –

+0

В вашей первой ссылке вам нужно установить что-нибудь еще, кроме 'pyglet'? Когда я попытался запустить первый пример, интерпретатор python дает мне кучу ошибок. – CodeKingPlusPlus

14

Самый простой способ для 3D визуализации в Python является VPython.

Например, чтобы нарисовать кривую в форме квадрата, это просто:

square = curve(pos=[(0,0),(0,1),(1,1),(1,0),(0,0)]) 

Это значительно проще, чем MayaVi, ВТК, OpenGL и т.д.

Еще один простой вариант Matplotlib-х 3D-графика. Это лучше по количественным деталям, но не так просто, быстро и интерактивно для 3D-части.