使用vtk的vtkXMLUnstructuredGridReader()类读取非结构化网格结构的vtu格式的数据文件。
import vtkmodules.all as vtk
filename = "test.vtu"

reader = vtk.vtkXMLUnstructuredGridReader()
reader.SetFileName(filename)
reader.Update()


reader.GetOutput().GetPointData().SetActiveVectors('Vectors')


renderer = vtk.vtkRenderer()
render_window = vtk.vtkRenderWindow()
render_window.AddRenderer(renderer)

ColorTransferFunction = vtk.vtkColorTransferFunction()
ColorTransferFunction.AddRGBPoint(x,r,g,b)

mapper = vtk.vtkDataSetMapper()
mapper.SetInputData(reader.GetOutput())
mapper.SetInputConnection(reader.GetOutputPort())
mapper.SetLookupTable(ColorTransferFunction)
mapper.SetScalarRange(data.GetScalarRange())


actor = vtk.vtkActor()
actor.SetMapper(mapper)
actor.GetProperty().SetInterpolationToFlat()
actor.GetProperty().SetColor(1, 1, 1)
actor.GetProperty().SetSpecularPower(20)

renderer.AddActor(actor)

render_window.SetSize(800, 800)
render_window.Render()

iren = vtk.vtkRenderWindowInteractor()
iren.SetRenderWindow(render_window)
iren.Initialize()
iren.Start()

Logo

技术共进,成长同行——讯飞AI开发者社区

更多推荐