我正在使用matplotlib的Poly3DCollection绘制一组多边形(三角形)。这些三角形是由具有颜色的顶点之间形成的。我目前正在每个三角形中填充一个实心颜色,该颜色是通过平均三个顶点的颜色得出的。这些三角形被绘制成一个三维表面网格。
我想用三个顶点之间的渐变来填充三角形。理想情况下,在给定点处的像素颜色将仅基于到三个点的距离进行线性插值。例如,如果顶点是蓝色、绿色和红色的,生成的三角形应该如下图所示:
我认为这应该可以使用matplotlib实现,但不确定如何操作。如果不可能,您能否建议我使用其他库或方法?感谢您的帮助。
编辑: 附加细节
它应该适用于任意数量的三角形,但可能少于2000个。颜色是任意的,尽管每个顶点只与一个颜色相关联。多边形集合是从顶点列表[x_1, y_1, z_1, x_2, y_2, z_2...]创建的。我可以根据需要轻松更改此格式。与每个顶点相关联的颜色在单独的列表中,这也可以轻松更改。
我想用三个顶点之间的渐变来填充三角形。理想情况下,在给定点处的像素颜色将仅基于到三个点的距离进行线性插值。例如,如果顶点是蓝色、绿色和红色的,生成的三角形应该如下图所示:
![enter image description here](https://istack.dev59.com/i4fgj.webp)
编辑: 附加细节
它应该适用于任意数量的三角形,但可能少于2000个。颜色是任意的,尽管每个顶点只与一个颜色相关联。多边形集合是从顶点列表[x_1, y_1, z_1, x_2, y_2, z_2...]创建的。我可以根据需要轻松更改此格式。与每个顶点相关联的颜色在单独的列表中,这也可以轻松更改。