View Issue Details [ Jump to Notes ] | [ Print ] | ||||||||
ID | Project | Category | View Status | Date Submitted | Last Update | ||||
0008648 | VTK | (No Category) | public | 2009-03-02 02:55 | 2011-01-13 17:00 | ||||
Reporter | Jeroen Wijnhout | ||||||||
Assigned To | Clinton Stimpson | ||||||||
Priority | normal | Severity | major | Reproducibility | always | ||||
Status | closed | Resolution | not fixable | ||||||
Platform | OS | OS Version | |||||||
Product Version | |||||||||
Target Version | Fixed in Version | ||||||||
Summary | 0008648: QVTKWidget does not work well with compiz | ||||||||
Description | When multiple QVTKWidget are used when using the compiz window manager (Ubuntu 8.10), very weird behavior is seen: On resizing one or more of the QVTKWidget stops responding. Sometimes you have to resize once, sometimes often for this to happen. Sometimes the whole desktop blocks before a resize is completed. When a QVTKWidget stops responding, clicking on it makes the complete desktop flicker once. When the window special effects are disabled (Ubuntu then switchs to a non compositing window manager) the QVTKWidgets work fine. | ||||||||
Additional Information | VTK 5.2.0 | ||||||||
Tags | No tags attached. | ||||||||
Project | |||||||||
Type | |||||||||
Attached Files | QVTKWidgetTest.zip [^] (20,050 bytes) 2009-03-04 04:16 imageviewer.patch [^] (1,008 bytes) 2009-03-04 11:30 [Show Content] | ||||||||
Relationships | |
Relationships |
Notes | |
(0015529) Jeroen Wijnhout (reporter) 2009-03-04 04:23 |
I've uploaded a test case (you might have to edit the .pro file to set the VTKDIR variable). Run the QVTKWidgetTest application, load the image (by pressing Ctrl+O, it loads the image 1.png). After a view resizes (usually within 10) one or more of the QVTKWidgets freezes. This is with compiz version: 1:0.7.8-0ubuntu4.1 on Ubuntu 8.10. Nvidia driver: 177.82-0ubuntu0.1 On my system this is completely reproducible, although the number of resizes that is necessary varies from time to time. |
(0015537) Clinton Stimpson (developer) 2009-03-04 11:33 |
I've attached a patch to fix vtkImageViewer2.cxx. Also, you should fix your example to do this: // bind the window first before anything m_imageViewer->SetRenderWindow(GetRenderWindow()); m_imageViewer->SetupInteractor(GetInteractor()); m_imageViewer->SetInput(_image); m_imageViewer->Render(); As for the compiz specific behavior, I can reproduce it if I turn compiz on, but I can't help a compiz bug. Even ParaView starts acting funny when you add the 4th view. |
(0015547) David Cole (developer) 2009-03-04 15:49 |
Fixed in CVS HEAD: cvs commit -m "BUG: Fix issue 0008648. Better SetSize code in vtkImageViewer2. Thanks to Clinton Stimpson for the patch." /cvsroot/VTK/VTK/Rendering/vtkImageViewer2.cxx,v <-- Rendering/vtkImageViewer2.cxx new revision: 1.40; previous revision: 1.39 |
(0015549) Clinton Stimpson (developer) 2009-03-04 16:05 |
I'm now suspecting the resize problem is a bug in the nVidia drivers. If I keep compiz running with nVidia GL drivers, but make this test app run with Mesa3d, the problem goes away. I don't think there's anything more that can be done in VTK to help you. |
(0015558) Jeroen Wijnhout (reporter) 2009-03-05 04:33 |
Thanks for the patch on vtkImageViewer2. Integrating it with QVTKWidget works without any problems now. However the original bug was on the interaction of QVTKWidget with Compiz. This bug is not solved. I agree that it is most likely a NVidia driver bug, but the status is now set to fixed while the bug is really rejected. This is just a minor issue, but it now appears as if the QVTKWidget/Compiz problem has been solved. Btw, perhaps the bug can be circumvented in QVTKWidget::x11_setup_window(), which has some explicit X11 calls that possibly triggers the bug? |
(0015566) Clinton Stimpson (developer) 2009-03-05 10:58 |
QVTKWidget::x11_setup_window() is required to get as many features as possible from the server side GL support. Some X11 servers give a black/white or grayscale graphics window (depending on the default visual) unless that code is called. Also because KDE/Gnome typically want more features, the default visual gives most/all of the features to VTK apps without needing to call x11_setup_window(). One feature some linux users still don't get without x11_setup_window() is anti-aliasing. Besides, Qt's OpenGL module does the same thing. Its my guess this problem could be reproduced without QVTKWidget. A quick google of "compiz resize slow" brings up a lot of hits. By design, there's nothing a client app can do to freeze the desktop unless there's a bug in the X11 server or one of its extension modules. |
(0015586) Jeroen Wijnhout (reporter) 2009-03-06 03:18 |
Thanks for explaining why x11_setup_window is needed, I was kind of wondering about that. I certainly experienced slow resizes under Compiz, but this behavior is even worse. But you are right, QVTKWidget is not to blame. I ditched Compiz for the time being and am happily using Qt/VTK now. As far as I am concerned you can resolve this issue as "rejected" (or the equivalent of that in Mantis). |
(0015739) Clinton Stimpson (developer) 2009-03-19 16:02 |
Nothing to fix this problem in QVTKWidget. |
Notes |
Issue History | |||
Date Modified | Username | Field | Change |
2009-03-02 02:55 | Jeroen Wijnhout | New Issue | |
2009-03-04 04:16 | Jeroen Wijnhout | File Added: QVTKWidgetTest.zip | |
2009-03-04 04:23 | Jeroen Wijnhout | Note Added: 0015529 | |
2009-03-04 11:30 | Clinton Stimpson | File Added: imageviewer.patch | |
2009-03-04 11:33 | Clinton Stimpson | Note Added: 0015537 | |
2009-03-04 11:33 | Clinton Stimpson | Status | backlog => tabled |
2009-03-04 11:33 | Clinton Stimpson | Assigned To | => Clinton Stimpson |
2009-03-04 15:49 | David Cole | Note Added: 0015547 | |
2009-03-04 16:05 | Clinton Stimpson | Note Added: 0015549 | |
2009-03-04 16:05 | Clinton Stimpson | Status | tabled => @80@ |
2009-03-04 16:05 | Clinton Stimpson | Resolution | open => fixed |
2009-03-05 04:33 | Jeroen Wijnhout | Note Added: 0015558 | |
2009-03-05 04:33 | Jeroen Wijnhout | Status | @80@ => @20@ |
2009-03-05 04:33 | Jeroen Wijnhout | Resolution | fixed => reopened |
2009-03-05 10:58 | Clinton Stimpson | Note Added: 0015566 | |
2009-03-06 03:18 | Jeroen Wijnhout | Note Added: 0015586 | |
2009-03-19 16:02 | Clinton Stimpson | Note Added: 0015739 | |
2009-03-19 16:02 | Clinton Stimpson | Status | @20@ => closed |
2009-03-19 16:02 | Clinton Stimpson | Resolution | reopened => not fixable |
2011-01-13 17:00 | Source_changeset_attached | => VTK master a2bd8391 | |
2011-01-13 17:00 | Source_changeset_attached | => VTK master 020ef709 | |
2011-06-16 13:11 | Zack Galbreath | Category | => (No Category) |
Issue History |
Copyright © 2000 - 2018 MantisBT Team |