Re: [vtkusers] the New QVTKOpenGLWidget

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

Re: [vtkusers] the New QVTKOpenGLWidget

Jean-Christophe Fillion-Robin-2
Hi All,

Thanks for the feedback.

Based on feedback, we will keep the widget QVTKOpenGLWidget and only rename QVTKOpenGLSimpleWidget to QVTKOpenGLNativeWidget
The corresponding change can be found at https://gitlab.kitware.com/vtk/vtk/merge_requests/4642


> unless it's somehow possible to make a widget that will work well in both scenarios

That is the idea, ultimately we would like the QVTKOpenGLWidget to be smarter.

Thanks
Jc


On Tue, Aug 28, 2018 at 1:28 AM Elvis Stansvik <[hidden email]> wrote:
2018-08-28 0:12 GMT+02:00 Jean-Christophe Fillion-Robin <[hidden email]>:
> Hi All,
>
> To follow up on Mathieu email, we are in in the process of integrating this
> merge request [1] (and the equivalent in paraview [2]) that will add/rename
> the following classes:
>
> * QVTKOpenGLAlienWidget  (equivalent to QVTKOpenGLWidget class described in
> the previous email)
>
> * QVTKOpenGLNativeWidget (equivalent to QVTKOpenGLSimpleWidget class
> described in the previous email)
>
> * QVTKOpenGLWidget will:
>    - behave as it was before the introduction of the "new QVTKOpenGLWidget"
> and will instead derive from QVTKOpenGLNativeWidget.
>    - only be available if VTK_LEGACY_REMOVE is OFF
>    - will most likely be removed in VTK 10
>
>
> We anticipate that this clearer naming convention will facilitate update of
> user code.
>
> Let us know what you think,

I think this naming is the best one possible, unless it's somehow
possible to make a widget that will work well in both scenarios of
course :)

Much better naming than the "Simple" suffix, so +1.

Elvis

>
> Thanks
> Jc
>
>
> [1] https://gitlab.kitware.com/vtk/vtk/merge_requests/4625
> [2] https://gitlab.kitware.com/paraview/paraview/merge_requests/2693
>
>
>
>
>
>
>
>
> On Thu, Aug 23, 2018 at 5:07 AM Mathieu Westphal
> <[hidden email]> wrote:
>>
>> Hello list,
>>
>> If you are working on a VTK/Qt application this information should
>> interest you.
>> Sometime ago, a new QVTKOpenGLWidget implementation has been added to VTK,
>> while the old one has been moved to QVTKOpenGLSimpleWidget.
>> The last fixes for this change have just been merged, so make sure to use
>> VTK master to test this.
>>
>> 1. Why is there a new widget and what does it do ?
>> We have been having some issues reported for the old widget, and the old
>> widget could not support quad buffer stereo rendering by design.
>> Has it is a needed feature in ParaView, a reimplementation was necessary.
>> This new widget fix most of the reported issues with the old widget as well
>> as adding stereo support.
>>
>> 2. Why keeping the old widget around then ?
>> Due to Qt limitations, this new implementation does not support very well
>> being a native widget.
>> But native widget are sometimes mandatory, for example within QScrollArea
>> and QMDIArea, so the QVTKOpenGLSimpleWidget should be used when in needs of
>> VTK rendering in the contact of Qt native widget.
>>
>> Also it allows users to switch back to the old widget if necessary.
>>
>> 3. I'm not sure what native widgets are, what should I do in my
>> application ?
>>
>> Here are the different situation :
>>
>> Your Qt application only uses a central QVTKOpenGLWidget for rendering:
>> -> Nothing to do, just build with last master and make sure all is working
>> well
>> Your Qt application only uses QVTKOpenGLWidget within QScrollArea or
>> QMDIArea, or manually set widgets to be native and you are not interested by
>> stereo rendering.
>>  -> Change all your QVTKOpenGLWidget to QVTKOpenGLSimpleWidget and you are
>> good to go
>> Your application uses a non-native QVTKOpenGLWidget for rendering as well
>> as native QVTKOpenGLWidget for rendering (eg: ParaView, with the central
>> rendering widget and the color map editor rendering widget in scroll areas)
>> :
>>  -> Use QVTKOpenGLWidget for non-native widgets and QVTKOpenGLSimpleWidget
>> for native ones. The later will never support stereo.
>>
>>
>> 4. I followed your recommendation but I see some strange
>> stuff/bugs/rendering issues
>> Even if this new class has been tested extensively and will be used in the
>> next ParaView release, It may still contains some issues. Feel free to
>> discuss them in this mailing list or on our gitlab.
>>
>> Best regards,
>>
>> Mathieu Westphal
>
>
> _______________________________________________
> Powered by www.kitware.com
>
> Visit other Kitware open-source projects at
> http://www.kitware.com/opensource/opensource.html
>
> Please keep messages on-topic and check the VTK FAQ at:
> http://www.vtk.org/Wiki/VTK_FAQ
>
> Search the list archives at: http://markmail.org/search/?q=vtkusers
>
> Follow this link to subscribe/unsubscribe:
> https://public.kitware.com/mailman/listinfo/vtkusers
>

_______________________________________________
Powered by www.kitware.com

Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html

Search the list archives at: http://markmail.org/search/?q=vtk-developers

Follow this link to subscribe/unsubscribe:
https://public.kitware.com/mailman/listinfo/vtk-developers