Mr.For 2023-03-06 18:24 采纳率: 0%
浏览 25

vtkAppendPolyData 加点后应该怎么网格化

img


现在网格模型 和 点模型 用 vtkAppendPolyData 合在一起生成的一个 vtkActor 但是点没有网格化
vtkTriangleFilter 转换后的也没有网格化,应该怎么才能把 这些点网格化呢?

  • 写回答

1条回答 默认 最新

  • 全能技术 2023-03-11 14:35
    关注

    如果你想将一个点云数据(即仅有点而没有拓扑关系的数据)转换为有拓扑关系的网格数据,可以尝试以下方法:

    1.用 vtkDelaunay2D 进行二维三角剖分。这个滤波器可以将点云数据转换为三角形网格数据,以便于渲染。

    delaunay = vtk.vtkDelaunay2D()
    delaunay.SetInputData(polydata)  # 设置点云数据作为输入
    delaunay.Update()  # 进行计算
    
    

    2.用 vtkSurfaceReconstructionFilter 进行表面重构。这个滤波器可以根据点云数据的密度和分布情况,推断出表面的形状,然后将其转换为网格数据。这个方法相比前一种方法更加高级,但是计算复杂度也更高。

    surf = vtk.vtkSurfaceReconstructionFilter()
    surf.SetInputData(polydata)  # 设置点云数据作为输入
    surf.Update()  # 进行计算
    
    cf = vtk.vtkContourFilter()
    cf.SetInputConnection(surf.GetOutputPort())  # 设置输出作为输入
    cf.SetValue(0, 0.0)
    cf.Update()
    
    polydata = cf.GetOutput()  # 获取输出网格数据
    
    

    注意,以上方法只是将点云数据转换为拓扑结构的三角网格数据,并不能生成表面的纹理信息。如果需要生成表面纹理,还需要根据应用场景进行相应的处理。

    评论

报告相同问题?

问题事件

  • 创建了问题 3月6日

悬赏问题

  • ¥15 is not in the mmseg::model registry。报错,模型注册表找不到自定义模块。
  • ¥15 安装quartus II18.1时弹出此error,怎么解决?
  • ¥15 keil官网下载psn序列号在哪
  • ¥15 想用adb命令做一个通话软件,播放录音
  • ¥30 Pytorch深度学习服务器跑不通问题解决?
  • ¥15 部分客户订单定位有误的问题
  • ¥15 如何在maya程序中利用python编写领子和褶裥的模型的方法
  • ¥15 Bug traq 数据包 大概什么价
  • ¥15 在anaconda上pytorch和paddle paddle下载报错
  • ¥25 自动填写QQ腾讯文档收集表