如何在paraview web

时间:2016-08-07 01:45:24

标签: vtk paraview

当用户点击鼠标左键时,我们公司希望我们的paraview Web应用程序显示相关数据。

如何从选定点提取数据的另一部分很简单。但是我无法解决问题:如何在鼠标点击的同时在坐标中选取一个点?

我添加了一个回调函数来处理python脚本中的左键按下。然后我尝试使用 vtkPointPicker 来投射光线并选择坐标中的点。但是运行python脚本作为服务器的 pvpython 程序在单击鼠标时会崩溃(准确地说,当选择器运行 pick()时)。在调试中我发现解除引用空指针的VTK代码是程序崩溃的原因。但是VTK源代码太复杂了,无法进一步深入研究。

这是我的回调函数:

def CustomLeftButtonPress(obj, event):
    x = obj.GetEventPosition()[0]
    y = obj.GetEventPosition()[1]

    picker = vtkPointPicker()
    obj.SetPicker(picker)
    currentRenderer = obj.FindPokedRenderer(x,y)
    picker.Pick(x, y, 0.0, currentRenderer)
    ...

picker.Pick(x, y, 0.0, currentRenderer)导致崩溃。

1 个答案:

答案 0 :(得分:0)

我应该使用vtkWorldPointPicker代替vtkPointPicker