微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何在Python中使用InsertNextLinkedCell函数将单元格添加到vtk数据集中?

如何解决如何在Python中使用InsertNextLinkedCell函数将单元格添加到vtk数据集中?

我是vtk的新手。 我在Python中有vtk数据集,我需要删除特定的单元格,而不是添加新的单元格。新单元格可以比原始单元格具有更多的点,因此我拒绝替换。我可以找到要删除的像元,并在原始像元上循环找到新像元的点列表。

原始数据集的加载方式如下:

dfn_reader = vtk.vtkpolyDataReader()
dfn_reader.SetFileName(filename)
dfn_reader.ReadAllScalarsOn()
dfn_reader.Update()
dfn_data = dfn_reader.Getoutput()

在原始单元的最后循环中,我想使用InsertNextLinkedCell函数,但是我找不到如何在Python中使用它(如何准备要使用的新单元数据)。 这是我的解决方案的概念:

for i in range(number_of_original_cells):
    ...
    dfn_data.DeleteCell(i)
    dfn_data.EditableOn()
    dfn_data.InsertNextLinkedCell(vtk.VTK_polyGON,len(list_of_new_points),list_of_points’_IDs)

我的代码结尾看起来像这样:

dfn_data.RemoveDeletedCells()
cdfn_data = vtk.vtkpolyData()
cleanpolyData = vtk.vtkCleanpolyData()
cleanpolyData.SetInputData(dfn_data)
cleanpolyData.Setoutput(cdfn_data)
cleanpolyData.Update()

writer = vtk.vtkpolyDataWriter()
writer.SetFileName(new_filename)
writer.SetInputData(cdfn_data)
writer.Write()

任何想法都将不胜感激。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。