在 VTK 中平滑多边形数据
Smoothing poly data in VTK
我有一个看起来像这样的多边形数据:
我想得到的是更平滑的东西,像这样(为了演示目的在paint中编辑):
到目前为止,我已经尝试了以下过滤器:
vtkWindowedSincPolyDataFilter
vtkSmoothPolyDataFilter
然而,我得到的最接近的是第一个,结果是这样的:
VTK 中是否有任何过滤器或策略可以让我达到真正接近第二张图片的效果?
提前致谢。
我建议您使用 vtkSmoothPolyDataFilter
的收敛和迭代参数,以获得该过滤器的单次应用的最佳结果。如果这不令人满意,为什么不继续多次应用它,一个接一个?如果我遇到这个问题,这就是我会做的。
另一种解决方案可能是使用 vtkPolyDataToImageStencil 从该多数据生成二进制 vtkImageData,然后使用 vtkImageGaussianSmooth 之类的工具平滑图像,然后使用 vtkMarchingCubes 返回多数据世界
您需要为每个过滤器调整一些参数,但这应该有效,并且可以让您更好地控制其他平滑
我有一个看起来像这样的多边形数据:
我想得到的是更平滑的东西,像这样(为了演示目的在paint中编辑):
到目前为止,我已经尝试了以下过滤器:
vtkWindowedSincPolyDataFilter
vtkSmoothPolyDataFilter
然而,我得到的最接近的是第一个,结果是这样的:
VTK 中是否有任何过滤器或策略可以让我达到真正接近第二张图片的效果?
提前致谢。
我建议您使用 vtkSmoothPolyDataFilter
的收敛和迭代参数,以获得该过滤器的单次应用的最佳结果。如果这不令人满意,为什么不继续多次应用它,一个接一个?如果我遇到这个问题,这就是我会做的。
另一种解决方案可能是使用 vtkPolyDataToImageStencil 从该多数据生成二进制 vtkImageData,然后使用 vtkImageGaussianSmooth 之类的工具平滑图像,然后使用 vtkMarchingCubes 返回多数据世界
您需要为每个过滤器调整一些参数,但这应该有效,并且可以让您更好地控制其他平滑