vtkSplineRepresentation () 的参与者

Actor for vtkSplineRepresentation ()

我有两个 vtkSplineRepresentation () 和两个视口。我想用样条线绑定视图。我知道为了做到这一点,我必须创建一个 Actor。但问题是我不知道如何。我尝试了 VtkActor 命令,但我只显示了一个球,而不是一组点,我也尝试了 LineActor,但出现错误。有人可以帮助我吗?

函数如下:

def Spline(self,crv,ren,iren):

    extract = vtk.vtkExtractVOI()
    puntosVTK=dental_curve.puntos_vtk(crv)

    spline = vtk.vtkSplineWidget() 
    spline.InitializeHandles(puntosVTK) #insertamos los puntos       
    spline.SetCurrentRenderer(ren)
    spline.SetDefaultRenderer(ren)

    spline.SetInputConnection(extract.GetOutputPort())
    spline.SetInteractor(iren)
    spline.ProjectToPlaneOn()
    spline.SetProjectionNormalToXAxes()
    spline.On()
    return spline

您需要从 vtkSplineRepresenatation(通过 GetPolyData())获取多边形数据并将其传递给 vtkPolyDataMapper,然后将 vtkPolyDataMapper 用于您的演员。你没有 post 代码,所以没有什么我不能解决的,但给你一个想法:

mapper = vtk.vtkPolyDataMapper()
geometry = vtk.vtkPolyData()
spline.GetPolyData(geometry))
mapper.SetInputData(geometry)
mapper.Update()

actor = vtk.vtkActor()
actor.SetMapper(mapper)