vtk样条表示的演员()

问题描述 投票:1回答:1

我有两个vtkSplineRepresentation()和两个视口。我想用Spline绑定一个视图。我知道为了做到这一点,我必须创建一个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
python actor vtk
1个回答
2
投票

你需要从你的vtkSplineRepresenatation(通过GetPolyData())获取polydata并将其传递给vtkPolyDataMapper,然后使用vtkPolyDataMapper到你的actor。你没有发布代码,所以没有什么我无法解决,但给你一个想法:

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

actor = vtk.vtkActor()
actor.SetMapper(mapper)
© www.soinside.com 2019 - 2024. All rights reserved.