问题标签 [qvtkwidget]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
246 浏览

c++ - 将点添加到 qvtkWidget 中的 vtkPlot 后如何强制重新渲染?

在 QT 中,我有一个我qvtkWidget在其中绘制图表。

我使用两个功能:

以下函数使用两个点 (0,0) 和 (0,1) 初始化绘图:

哪里plotTable是一个vtkSmartPointer<vtkTable>viewvtkSmartPointer<vtkContextView>plot_qvtkWidget是一个QVTKWidget*

调用上述函数时,绘图会立即显示在小部件中。

然后我有这个函数,当我在我的 QT 应用程序中单击某个按钮时会调用它:

问题是,当我调用上述函数时,绘图并没有立即更新。如果我放大和缩小并平移绘图,它最终会更新,我可以看到新点。

我试过这些方法:

如何强制我的情节更新?

0 投票
3 回答
995 浏览

c++ - registerPointPickingCallback (PCLViewer::callback_Test,(void*)&viewer); 返回 C3687 非标准语法;使用 '&' 创建指向成员的指针

我正在尝试使用 PCLvisualizer 的点按回调。该代码使用 QVTKwidget 在 qt GUI 中显示 PCLvisualizer。下面的项目可以正常编译并且可以正常工作,但是当我包含此代码来设置回调时:

然后此错误消息显示:

错误:C3867:'PCLViewer::callback_Test':非标准语法;使用 '&' 创建指向成员的指针

只是为了测试回调我做了一个公共函数 callback_Test() 只是打印到 qDebug

我的代码有什么问题?

这是我的代码:

这是我的头文件:

0 投票
0 回答
849 浏览

c++ - 将 QVTKOpenGLWidget 与 Qt 一起使用导致项目崩溃

我有一个使用 pcl 和 vtk 的 Qt 工作项目。我使用的是 QVTKWidget。

现在我需要使用 QVTKOpenGLWidget 重新构建项目,因为不推荐使用 QVTKWidget

这篇文章建议应该使用来自 master 的最新 PCL 版本 QVTKOpenGLWidget 和 vtkGenericOpenGlRenderWindow 与 QTDesigner

我这样做并更改了必要的文件,但是当我将 pclVisuiliser 与 QVTKOpenGLWidget 链接时,编译项目时总是崩溃。

当这两行被注释掉时,项目不会崩溃:

我正在使用 Qt 5.9.5 和来自 github 上 master 的最新版本用于 PCl 和 VTK。

有什么遗漏吗?

0 投票
1 回答
787 浏览

python - 停止VTK定时器回调

参考这个例子:https ://lorensen.github.io/VTKExamples/site/Cxx/Utilities/Animation/

我对回调函数做了一个小改动,在一定数量的计时器计数后停止它。

问题是,如果我在动画过程中使用鼠标与 renderWindowInteractor 交互,然后在释放鼠标后,回调函数将永远运行,并且可以通过控制台日志确认(基本上cout << "Timer Destroyed: " <<iren->DestroyTimer() << endl;返回 0,意味着计时器销毁失败)。但是,否则它会按预期工作并停止,因为控制台中不会“永远”打印任何内容。难道我做错了什么?这种行为是预期的吗?

0 投票
0 回答
22 浏览

c++ - QVTKOpenGLWidget 与 Qt 5.9.5

我正在尝试在 Qt GUI 中集成 VTK 渲染窗口。使用 QtCreator/Designer,我在 MainWindow 中添加了一个 openGLWidget,并将其提升为 QVTKOpenGLWidget。当我尝试编译时,编译器找不到头文件“QVTKOpenGLWidget.h”。在我手动将此标头添加到项目后,链接器显然找不到正确的库并给出错误:

/home/christian/InSync/Tmp/build-Viewer3D-Desktop_f4eeec-Debug/ui_mainwindow.h:42:错误:未定义对“QVTKOpenGLWidget::QVTKOpenGLWidget(QWidget*, QFlags)”的引用

我首先添加了最有可能包含 QVTKOpenGLWidget 的 vtk 库,然后添加了所有 vtk 库,但问题仍然存在。我将非常感谢有关如何使这个最小示例起作用的想法。

我正在使用 Qt 5.9.5 和 VTK 7.1

谢谢,克里斯

0 投票
1 回答
347 浏览

vtk - vtkCamera 焦点期望的值的类型和范围是什么?

我正在使用 PCL 查看器(使用 VTK)来可视化由 SLAM 算法生成的 3D 点云。我正在尝试渲染机器人在给定姿势(位置和方向)下看到的点云视图。我可以设置相机的位置和 ViewUp 矢量,但我无法将相机的焦点设置为机器人的航向。目前,我正在使用滑块来设置焦点,但我想根据标题以编程方式设置它。

我正在尝试了解 VTKCamera Focal Point 期望的类型(以 rad 为单位的角度/以 m 为单位的距离)和值范围以及它与航向的关系。

我正在更新相机的功能

任何帮助是极大的赞赏。

-谢谢

附言

PCL Viewer Set Camera Implementation(使用VTK)

0 投票
1 回答
119 浏览

c++ - Add error bars to a VTK 2D scatter plot

Is there a way to add error bars to scatter plot data using VTK? I am currently plotting point data using the C++ API; there is uncertainty associated with the data I am trying to plot which I would like to visualise also.

I can't find any obvious references in the documentation to error bars; the only mention I have found is in this Kitware presentation from 2011, which doesn't seem to be a function that exists.

Sample code snippet:

where chartXY is a vtkChartXY object and chartDataTable is a vtkTable containing the x and y data in columns 0 and 1.

Is there a way to populate error data for visualisation in a similar fashion to the above, or will I have to roll my own chart type?

0 投票
1 回答
983 浏览

c++ - 隐藏 vtkOutputWindow

如何隐藏 vtkOutputWindow?GlobalWarningDisplayOff() 不会抑制或将输出重定向到文件,但只会隐藏。(并在一段时间后通过类似的方式再次显示vtkOutputWindow::GetInstance()->DisplayText(" "))。谢谢。

PS。我在 Windows 上使用 Qt gui。

聚苯乙烯。对于那些对此问题感兴趣的人,我将邮件列表通信带到这里(尚未提供超链接):

贝尔,好吧!现在我明白你的意思了。正如您所说,可能最简单的方法是向窗口发送关闭信号。

正如您在 vtkWin32OutputWindow 参考(https://www.vtk.org/doc/nightly/html/classvtkWin32OutputWindow.html)上看到的那样,它是“一个只读的 EDIT 控件”,所以如果你能得到它的句柄也许你可以将其合并到您可以控制的窗口中。另一个更复杂的解决方案是创建一个新类,该类继承自 vtkOutputWindow,基于 vtkWin32OutputWindow,但具有隐藏和显示控件的控件。最好的问候, Lucas Frucht Desenvolvimento

卢卡斯,谢谢你的回复。在隐藏 vtkOutputWindow 时,我不需要“保存更改”。一般来说,我的问题是关于如何在运行时从 gui 隐藏/显示这个窗口。vtkOutputWindow 类不是从任何小部件派生的,因此它没有任何方法,如“隐藏”或“关闭”。也毁了它也无济于事。

不要关闭它。似乎向窗口发送关闭信号是最简单的解决方案。

真诚的,贝尔。08.08.2018 18:04, lucas.frucht@medilabsistemas.com.br: >

贝尔,在你的问题中有一点我不清楚。您希望在隐藏 vtkOutputWindow 时显示的消息被丢弃还是在取消隐藏时显示?

如果你希望它被丢弃,我想你可以将它重定向到/dev/nullUnix 或 Windows 上的 nul 并在你想取消隐藏窗口时删除重定向。

如果您只是想延迟输出,也许您可​​以将消息重定向到 vtkStringOutputWindow 以将消息存储在字符串中,然后当您想要显示时,删除重定向并调用 DisplayText 传递您存储消息的字符串。我从来没有尝试过,但对我来说这似乎是合理的。最好的问候,卢卡斯·弗鲁赫特。

0 投票
0 回答
1835 浏览

c++ - 如何在 Ubuntu 中使用 QT 安装 VTK

我需要在 ubuntu 中使用 QT 安装 VTK。我尝试按照官方网站中描述的方式进行操作,但出现各种错误。有人可以解释如何使用 Qt 安装 VTK。

0 投票
0 回答
206 浏览

qt - 使用集成的 VTK 连接 QT 中的信号和插槽

我正在用 VTK 创建一个 QT GUI。我正在 VTK 中创建一个球体,并且我想在单击按钮(QPushButton)时更改球体的颜色。

所以我像这样连接信号和插槽,

但这不会改变球体的颜色,即使我点击了按钮。有人可以解释这里的错误是什么。

我只想在单击按钮时更改球体的颜色。这是我写的插槽,