2014-11-12 5 views
0

Я хотел бы знать, как построить много кубов с Python. Для каждого куба у меня есть его координаты (Xmin, Xmax, Ymin, Ymax, Zmin, Zmax) и его значение для рисования куба по этому значению. На самом деле я действительно хочу рисовать воксели.Рисуем кубы с интенсивностью цвета с помощью Python

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

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

ответ

0

В майави вы можете использовать набор глифов из списка предопределенных фигур с помощью mlab.points3d.

points = mlab.points3d(px, py, pz, mode='cube') 

Это построение куба в каждой точке, в центре куба.

Вы также можете построить глифы а затем изменить тип источника с

points.glyph.glyph_source.glyph_source = points.glyph.glyph_source.glyph_dict['cube_source'] 

(Вы также можете это сделать в меню трубопровода)

scale_factor аргумент позволит изменить размер куба ,

Это неудобный способ построения вокселя по данным воксела, но он будет делать то, что вы просили.

+0

Спасибо. Я думал об этом решении, но хотел бы, чтобы стороны куба были смежными. Я мог бы сделать это, если бы мог вставить размер стороны, но я могу только вставить scale_factor. – Pablo

+0

Я думаю, что в майави это «правильное» решение с некоторыми экспериментами с масштабным фактором, особенно если этот масштаб никогда не изменится. В качестве альтернативы может быть возможно выполнить некоторое vtk-программирование, которое задает размер gylphs напрямую. Любое другое решение в Mayavi (а не vtk напрямую), о котором я могу думать, будет включать выделение большого количества объектов vtk, которые могут быстро стать довольно громоздкими и медленными. – aestrivex

+0

Любая идея, как изменить ориентацию точек 3D-глифов? Например, в терминах набора единичных векторов, перпендикулярных граням? – kevinkayaks

 Смежные вопросы

  • Нет связанных вопросов^_^