我有一个pyvista多边形(特别是等腰梯形),我想在其上应用纹理。问题在于,原始平行线沿着梯形的对角线奇怪地弯曲。有什么办法可以防止这种情况吗?我也不知道这个问题是否应该在pyvista,vtk或opengl层上解决。有关重现问题的最小工作示例,请参阅下文。
原始纹理:
预期结果(或多或少,它不是关于亮度,而是线条):

以下代码的结果/实际结果:

重现结果的代码:
import numpy as np
import pyvista as pv
vertices = np.array([[0.2, 0, 0],
[0.8, 0, 0],
[1, 1, 0],
[0, 1, 0]])
# mesh faces
faces = np.hstack([[4, 0, 1, 2, 3]]) # square
surf = pv.PolyData(vertices, faces)
tex = pv.read_texture("parallel.png")
# Turning these on did not make a visible difference.
tex.InterpolateOn()
tex.MipmapOn()
surf.t_coords = np.array([[0., 0.],
[1., 0.],
[1., 1.],
[0., 1.]])
# experience a weird bend in the texture
surf.plot(texture=tex)
月关宝盒
相关分类