VTK,Python:如何连接vtk点并将它们可视化为表面?



我目前有一个代码,可以可视化我从 OBJ 文件中获取的 vtkpoints:

poly = vtkPolyData()
poly.SetPoints(points) //points from obj file
sphere = vtkSphereSource()
sphere.SetRadius(.7)
sphere.SetThetaResolution(4)
sphere.SetPhiResolution(4)
glyph = vtkGlyph3D()
glyph.SetSourceConnection(sphere.GetOutputPort())
glyph.SetInputData(poly)
mapper = vtkPolyDataMapper()
mapper.SetInputConnection(glyph.GetOutputPort())
self.actor = vtkActor()
self.actor.SetMapper(mapper)
self.ren.AddActor(self.actor)
self.vtkWidget.Render()

因此,我在 OBJ 文件上的每个点都可视化为一个球体。但是,我想知道是否有一种方法可以连接这些点并将它们可视化为表面?我尝试过vtksurfacereconstruction filter和delaunay,但这会产生可怕的结果,甚至没有接近我所需要的。

这通常使用Delaunay过滤器完成。

https://www.vtk.org/doc/nightly/html/classvtkDelaunay3D.html https://www.vtk.org/doc/nightly/html/classvtkDelaunay2D.html

在大多数情况下,它的效果很好。

你将需要共享数据集才能获取其他类型的信息。

最新更新