我有一个VTK文件,可以正确填充ParaView中的数据:
但是,当我使用VTK的Python API打开相同的文件时,我似乎一辈子都找不到相同的标签数据集。这是我尝试过的:
import vtk
from vtk.numpy_interface import dataset_adapter as dsa
reader = vtk.vtkUnstructuredGridReader()
reader.SetFileName('test.vtk')
reader.Update()
adapter = dsa.WrapDataObject(reader.GetOutput())
print(adapter.PointData.keys()) # ['hu', 'disp']
print(adapter.CellData.keys()) # []
print(adapter.FieldData.keys()) # []
因此,似乎ParaView能够识别'hu'和'disp'以外的其他数据集,但我似乎无法在相应的Python对象中找到它们。
我假设它在某个地方。有人知道为什么它们(例如“压力”)不显示为键吗?
您需要让阅读器读取所有数据。
reader.ReadAllScalarsOn()
reader.ReadAllVectorsOn()
...
取决于您要加载的数据的种类。请参阅:https://vtk.org/doc/nightly/html/classvtkDataReader.html#a831f470c6fbfc6e7209a1243ccb546e2