如何在 VTK 中将 STL 拆分为表面

How to split a STL into surfaces in VTK

有人知道如何在 VTK 中将 STL 拆分为表面吗?或者如何在 Paraview 中实现?

在 ParaView 中:

  • 打开 ParaView
  • 文件 -> 打开 -> Select 你的 STL 文件,应用
  • 您获得一个 vtkPolyData 对象,然后您可以使用 ParaView 进行任何您可能想要做的分割。

在 VTK 中:

vtkNew<vtkSTLReader> reader;
reader->SetFileName("/path/to/your/file.stl");
reader->Update()

您可以使用 reader 输出并显示它或使用 VTK 过滤器将其拆分为您的需要。

取决于你想如何分割它。如果要将其拆分为分组曲面,请将 vtkPolyDataNormals 与 SplittingOn 一起使用,并使用 SetFeatureAngle 来决定拆分的角度。然后,您可以使用 vtkPolyDataConnectivityFilter 循环获取每个分割片。