[vtkusers] QVTKWidget signal/slot question
johne at annidis.com
Fri Mar 27 13:40:38 EDT 2009
I am now testing the slider in Windoze, so the compiz problem does not
exist. I also tried QVTKWidget::update() instead of
vtkRenderWindow::Render(). Still no improvement. As I slide the bar, it
seems like Qt is only transmitting the signals at fixed intervals of
time. I doesnt look like VTK is not rendering quickly enough, it seems
as though Qt is doing some sort of performance optimization behind the
scenes so as not to call as many paint commands so frequently.
Is there any way I can bypass this? Or change some value? Or is this a
strictly Qt question?
Clinton Stimpson wrote:
> Perhaps moving the mouse in the graphics window to change window level
> skips levels that your QSlider approach doesn't skip. Are you doing
> tracking with the QSlider with a high number of ticks forcing the
> render window to go through each level?
> Consider doing some of the following if you aren't already.
> Call QVTKWidget::update() instead of vtkRenderWindow::Render() in your
> Reduce the number of ticks on your QSlider to a practical number (for
> example, more ticks than your screen resolution probably isn't a good
> Turn tracking off and connect to the valueChanged() signal.
> Or maybe its only a compiz related problem like others are warning about.
> John Eke wrote:
>> I currently have a Qt dialog with a slider. The valueChanged signal
>> from this slider is connected to a slot in my QVTKWidget subclass
>> which performs some Window-Level modifications on a vtkImageActor
>> inside the renderer.
>> In the vtk example (Examples/GUI/Qt/ImageViewer) dragging the mouse
>> across the image is fast enough. So why does it get ridiculously slow
>> when I send the commands through a slot? Is there a way I can speed
>> it up?
>> - John E
>> Powered by www.kitware.com
>> Visit other Kitware open-source projects at
>> Please keep messages on-topic and check the VTK FAQ at:
>> Follow this link to subscribe/unsubscribe:
More information about the vtkusers