如何解决如何在 vtk 中初始化三角形网格
我需要根据我拥有的点列表在 vtk 上创建一个三角形网格。这些点存储在 sphere 下,这是一个 nx9 numpy 数组,其中每一行代表组成一个三角形的三个点。现在我正在这样做:
points = vtk.vtkPoints()
triangles = vtk.vtkCellArray()
polydata = vtk.vtkpolyData()
for i in range(len(sphere)):
points.InsertNextPoint(sphere[i][:3])
points.InsertNextPoint(sphere[i][3:6])
points.InsertNextPoint(sphere[i][6:9])
triangle = vtk.vtkTriangle()
triangle.GetPointIds().SetId(0,0)
triangle.GetPointIds().SetId(1,1)
triangle.GetPointIds().SetId(2,2)
triangles.InsertNextCell(triangle)
polydata.SetPoints(points)
polydata.Setpolys(triangles)
这不能正确识别每个三角形。我该如何解决这个问题?
解决方法
每个 InsertNextPoint 返回一个 vtkIdType。这些是应该进入三角形 SetID 的第二个参数的数字。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。