连通区域分析
import vtk
sphereSource = vtk.vtkSphereSource() # 定义一个球面数据
sphereSource.SetRadius(10)
sphereSource.SetThetaResolution(10)
sphereSource.SetPhiResolution(10)
sphereSource.Update()
coneSource = vtk.vtkConeSource() # 定义一个椎体数据
coneSource.SetRadius(5)
coneSource.SetHeight(10)
coneSource.SetCenter(25, 0, 0)
coneSource.Update()
appendFilter = vtk.vtkAppendPolyData() # 可以实现vtkPolyData的合并
appendFilter.AddInputData(sphereSource.GetOutput())
appendFilter.AddInputData(coneSource.GetOutput())
appendFilter.Update()
connectivityFilter = vtk.vtkPolyDataConnectivityFilter() # 实现连通区域分析
connectivityFilter.SetInputData(appendFilter.GetOutput())
connectivityFilter.SetExtractionModeToCellSeededRegions() # 同于提取具有最多点的连通区域
connectivityFilter.AddSeed(100)
connectivityFilter.Update()
originalMapper = vtk.vtkPolyDataMapper()
originalMapper.SetInputConnection(appendFilter.GetOutputPort())
originalMapper.Update()
originalActor = vtk.vtkActor()
originalActor.SetMapper(o