Mayavi/mlab: построение треугольников с цветовыми данными для каждого треугольника, а не для каждой вершины.

Если использовать функцию

triangular_mesh

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

Как я могу назначить цвета треугольником, без какой-либо интерполяции?


person shuhalo    schedule 13.08.2012    source источник


Ответы (1)


Об этом также спросили в списке рассылки scipy.

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

s = mlab.pipeline.triangular_mesh_source(x,y,z,triangles)
s.data.cell_data.scalars = .... # Your data here.
surf = mlab.pipeline.surface(s)
surf.contours.filled_contours = True

http://mail.scipy.org/pipermail/numpy-discussion/2010-September/053040.html

person user1496862    schedule 16.01.2013
comment
Если вы хотите определить определенный цвет для каждого треугольника через скалярное значение, создав справочную таблицу (lut), вам также необходимо установить surf.module_manager.lut_data_mode = 'cell data'. - person Aydo; 31.01.2020