将纹理映射到mayavi网格

时间:2011-12-22 22:36:57

标签: python numpy visualization texture-mapping mayavi

我在python中使用mayavi来可视化一些数据。我在3D空间中有一个表面,我想将图像映射到它。我查看了mayavi文档,我能找到的只有this,这对我没什么帮助。有没有人以前做过这样的事情?

2 个答案:

答案 0 :(得分:2)

我发现mesh函数确实采用了scalars参数,然后根据所选择的颜色图对表面上的相应点进行着色。但我仍然不知道如何将任意RGB图像映射到表面。

答案 1 :(得分:1)

我猜你没有看到“用于3D绘图的Python脚本”这一章。有一组mayavi命令可以在python中使用。例如,"3D Plotting functions for numpy arrays"部分。如果您按照链接找到关于功能的一些描述,并为每个功能找到一个小例子。

对于您的情况,您应该meshsurf。这两种功能都是平等的,但却是不同的。例如,surf函数更像是mesh的子函数,这是我的观点。您不必定义x和y坐标,只需要在2D数组中使用z坐标。如果要使用mesh,则必须将所有三个坐标(x,y,z)作为2D数组传递。

我建议查看示例。

这是对你问题的回答吗?也许你应该更具体地说明你想做什么。

度过愉快的一天和节日快乐。