[vtk-developers] [vtkusers] the New QVTKOpenGLWidget

Jean-Christophe Fillion-Robin jcfr at kitware.com
Fri Aug 31 14:21:18 EDT 2018


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 <elvis.stansvik at orexplore.com>
wrote:

> 2018-08-28 0:12 GMT+02:00 Jean-Christophe Fillion-Robin <jcfr at kitware.com
> >:
> > 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
> > <mathieu.westphal at kitware.com> 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
> >
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://public.kitware.com/pipermail/vtk-developers/attachments/20180831/8c748b3f/attachment.html>


More information about the vtk-developers mailing list