vtkStreamTracer 不提取数据

vtkStreamTracer not extracting data

我正在尝试使用 vtk python 库从非结构化网格中提取流线:

import vtk

file_path = "my_file.vtk"

reader = vtk.vtkUnstructuredGridReader()
reader.SetFileName(file_path)
reader.Update()

streamer = vtk.vtkStreamTracer()
streamer.SetInputConnection(reader.GetOutputPort())
streamer.SetIntegratorTypeToRungeKutta45()
streamer.SetMaximumPropagation(500)
streamer.SetMaximumError(1.0e-8)
streamer.SetIntegrationDirection(2)
streamer.SetIntegrationStepUnit(2)
streamer.SetMinimumIntegrationStep(0.01)
streamer.SetMaximumIntegrationStep(0.5)
streamer.SetInitialIntegrationStep(0.2)
streamer.Update()

print(reader.GetOutput().GetNumberOfPoints()) # Output: 990000
print(streamer.GetOutput().GetNumberOfPoints()) # Output: 0

但是,streamTracer 似乎没有从输入中提取任何数据,正如您从最后一行代码中看到的那样。 我错过了什么吗?

您需要指定一些种子,即流线应该通过的点列表,使用 SetSourceDataSetSourceConnection 以使用过滤器的输出 / reader / source .

doc (c++ but API is quite always the same) and this example