python - vtkXMLPolyData Writer/Reader 不可逆
问题描述
我有一个vtkPolyData
对象c
,我正在尝试使用以下方法通过 XML 对其进行序列化vtkXMLPolyDataWriter
:
import vtk
print(c.GetNumberOfCells(), c.GetNumberOfPoints())
writer = vtk.vtkXMLPolyDataWriter()
writer.SetInputData(c)
writer.WriteToOutputStringOn()
writer.Update()
s = writer.GetOutputString()
reader = vtk.vtkXMLPolyDataReader()
reader.SetInputString(s)
reader.Update()
c2 = reader.GetOutput()
print(c2.GetNumberOfCells(), c2.GetNumberOfPoints())
打印:
8 6
0 0
有没有办法让这个过程完全可逆?
解决方案
显然,我在阅读过程中忘记了这一行:
reader.ReadFromInputStringOn()
我也改为vtkXMLPolyDataReader
(vtkPolyDataReader
与 Writer 相同)。
推荐阅读
- uikit - 我们如何在 UIStackview 中的两个视图之间创建一个具有自动宽度的间隔视图?
- python - 为什么 plot_model 会引发显示此神经网络的断言错误?
- python - 如何从缓冲区加载图像以进行预测?
- swift - UITableViewCell 中快速、模糊的图像运行不流畅
- ruby-on-rails - 图像未在 rails 6 视图中显示
- css - css input[type=radio] 在 IE 11 上无法正常工作
- bash - 从 bash 脚本作为此处文档运行时未执行 Snowsql 脚本
- python - 使用python在文件中写入avro记录
- wordpress - Facebook 正在加载开放图形图像但未显示
- php - 如何在 api laravel 8 中跟踪文件的上传大小