1 import vtk 2 cylinder = vtk.vtkCylinderSource() # 生成一个中心在渲染场景原点的柱体。 3 cylinder.SetHeight(3.0) # 设置柱体的高。 4 cylinder.SetRadius(1.0) # 设置柱体横截面的半径。 5 cylinder.SetResolution(10) # 设置柱体横截面的等边多边形的边数。 6 7 cylinderMapper = vtk.vtkPolyDataMapper() # 将输入的数据转换为几何图元进行渲染 8 cylinderMapper.SetInputConnection(cylinder.GetOutputPort()) # VTK可视化管线的输入数据接口 9 10 cylinderActor = vtk.vtkActor() # 渲染 11 cylinderActor.SetMapper(cylinderMapper) #用于设置生成几何图元的mapper,即连接一个actor到可视化管线的末端 12 cylinderActor.GetProperty().SetColor(1.0, 0.0, 0.0) 13 14 renderer = vtk.vtkRenderer() # 负责管理场景的渲染过程 15 renderer.AddActor(cylinderActor) # 将vtkActor添加到渲染场景中 16 renderer.SetBackground(1.0, 1.0, 1.0) # 设置背景颜色 17 18 renWin = vtk.vtkRenderWindow() 19 renWin.AddRenderer(renderer) # 加入vtkRenderer对象 20 renWin.SetSize(640, 480) # 设置窗口大小,以像素为单位 21 renWin.Render() 22 renWin.SetWindowName('RenderCylinder') 23 24 iren = vtk.vtkRenderWindowInteractor() # 鼠标、键盘响应事件交互 25 iren.SetRenderWindow(renWin) 26 27 style = vtk.vtkInteractorStyleTrackballCamera() # 可以通过控制相机对物体进行旋转、放大、缩小等操作。 28 iren.SetInteractorStyle(style) 29 30 iren.Initialize() 31 iren.Start()
https://blog.csdn.net/xujia0/article/details/121999969