# 导入 VTK 库
import vtk

# 创建球体数据源，设置球体参数
source = vtk.vtkSphereSource()
source.SetRadius(1.0)           # 球体半径
source.SetThetaResolution(320)   # 经线方向细分段数（控制水平精度）
source.SetPhiResolution(32)     # 纬线方向细分段数（控制垂直精度）

# 创建多边形数据映射器，将几何数据映射为图元
mapper = vtk.vtkPolyDataMapper()
mapper.SetInputConnection(source.GetOutputPort())  # 连接球体数据源输出

# 创建演员（Actor），代表场景中可见的三维对象
actor = vtk.vtkActor()
actor.SetMapper(mapper)  # 为演员指定映射器

# 创建渲染器，管理场景中的演员和背景
renderer = vtk.vtkRenderer()
renderer.AddActor(actor)              # 将演员添加到场景
renderer.SetBackground(0.1, 0.2, 0.4) # 设置背景颜色（深蓝色，RGB）

# 创建渲染窗口，用于显示渲染结果
window = vtk.vtkRenderWindow()
window.AddRenderer(renderer)  # 将渲染器添加到窗口
window.SetSize(800, 600)      # 设置窗口大小（宽×高，像素）

# 创建交互器，提供鼠标/键盘交互能力
interactor = vtk.vtkRenderWindowInteractor()
interactor.SetRenderWindow(window)  # 将交互器绑定到渲染窗口

# 渲染并启动交互循环
window.Render()        # 执行一次渲染
interactor.Start()     # 进入事件循环，等待用户交互