[vtk-developers] Volume won't show on Win7/Intel HD4600 with QVTKOpenGLWidget in 8.0.0.rc1

Elvis Stansvik elvis.stansvik at orexplore.com
Tue May 30 08:51:26 EDT 2017


2017-05-30 14:50 GMT+02:00 Elvis Stansvik <elvis.stansvik at orexplore.com>:
> 2017-05-26 14:35 GMT+02:00 Ken Martin <ken.martin at kitware.com>:
>> If you have a build of QT I think you could change
>>
>> https://github.com/qt/qtbase/blob/dev/src/plugins/platforms/windows/qwindowsglcontext.cpp#L730
>>
>> const int requestedVersion = qMin((format.majorVersion() << 8) +
>> format.minorVersion(),
>> staticContext.defaultFormat.version);
>>
>> to be
>>
>> const int requestedVersion = (format.majorVersion() << 8) +
>> format.minorVersion());
>>
>> and it would fix it for VTK/ParaView. Not sure if it has any other
>> consequences for Qt or if it would hit some different issue though. Qt on
>> windows does some tricky stuff to support OpenGL/Angle/ES2.
>>
>
> Today I tried first updating the Intel driver from 9.18.10.3272 (which
> the laptop came preinstalled with) to 10.18.10.4425, which is the
> latest vendor:ified version from Lenovo for this laptop (Thinkpad
> E540), but it didn't change anything.
>
> I then tried uninstalling the Lenovo one, to let me install the
> generic driver from Intel. The Intel driver update utility offered up
> 15.something, but in the end 10.18.14.4578 was what I got. And no
> luck, still the problem with volumes silently not showing up.
>
> So if your analysis is correct Ben, which it probably is, it's a real

s/Ben/Ken/

> PITA since it means I'll have to patch and build Qt to get our program
> to work on these Intel laptops running Windows.
>
> Anyone know if there's anything VTK or our application could do to
> work around this bad logic in the Qt context initialization? It would
> be a lot less trouble to re-build VTK, since I'm already building that
> (naturally).
>
> Elvis
>
>>
>>
>> On Fri, May 26, 2017 at 4:32 AM, Elvis Stansvik
>> <elvis.stansvik at orexplore.com> wrote:
>>>
>>> 2017-05-26 2:24 GMT+02:00 Ken Martin <ken.martin at kitware.com>:
>>> > I can reproduce this issue with PV 5.4 on my 4600 system. 99% sure it is
>>> > a
>>> > Qt bug we already bumped into with Mesa. They have what looks to me like
>>> > some odd bad logic on windows for creating a context where they will not
>>> > give you a core context later than the latest compatibility context they
>>> > can
>>> > get. For some vendors that is fine but for others they only offer Comp
>>> > contexts up to 2.1 or 3.0 but not 3.2. So while the driver may support
>>> > OpenGL 4 in Core mode, Qt restricts you to 3.0.  I suspect if they fixed
>>> > that the issue would go away. I believe Ben filed a bug report with them
>>> > (Qt) when he bumped into this when using Mesa on Windows.
>>>
>>> Ah yes, that could definitely be it. I found Ben's bug:
>>>
>>>     https://bugreports.qt.io/browse/QTBUG-60742
>>>
>>> The affected version is listed as 5.8.0, but I'm having trouble on
>>> 5.6.2, so I guess the bad logic is there as well.
>>>
>>> So let's hope for a fix in Qt then. But in the meantime, is there
>>> anything you can think if that I could do to work around it? I really
>>> want our application to work on these kinds of machines (the one I
>>> have was picked as a sort of a baseline for us wrt to requirements).
>>>
>>> In the bug report Ben mentions hacking around it with
>>> MESA_GL_VERSION_OVERRIDE, but that obviously doesn't apply when not
>>> using Mesa.
>>>
>>> Elvis
>>>
>>> >
>>> >
>>> > On Thu, May 25, 2017 at 7:44 PM, Elvis Stansvik
>>> > <elvis.stansvik at orexplore.com> wrote:
>>> >>
>>> >> 2017-05-25 23:37 GMT+02:00 David Cole <DLRdave at aol.com>:
>>> >> > Yes, I ran it both ways.
>>> >> >
>>> >> > It works when run without the argument in the plain VTK render
>>> >> > window,
>>> >> > and it is broken (shows nothing) when run with an argument.
>>> >>
>>> >> Alright, that's good. Then we're seeing the same thing.
>>> >>
>>> >> > Seems like it's definitely related to older Intel drivers on Windows.
>>> >>
>>> >> Yes, probably.
>>> >>
>>> >> > Not sure if there is an updated driver available for my machine.
>>> >> > Hesitant to try changing/updating it for other reasons, and sorry,
>>> >> > can't sacrifice this machine's current state for the purpose of
>>> >> > testing this out...
>>> >>
>>> >> No worries, I'm free to do as I please with the one I have, so I'll do
>>> >> some experimenting with different drivers when I'm back on Monday.
>>> >>
>>> >> Thanks to everyone trying this out.
>>> >>
>>> >> Elvis
>>> >>
>>> >> >
>>> >> >
>>> >> > D
>>> >> >
>>> >> >
>>> >> >
>>> >> > On Thu, May 25, 2017 at 5:11 PM, Elvis Stansvik
>>> >> > <elvis.stansvik at orexplore.com> wrote:
>>> >> >> 2017-05-25 20:35 GMT+02:00 Elvis Stansvik
>>> >> >> <elvis.stansvik at orexplore.com>:
>>> >> >>> 2017-05-25 18:14 GMT+02:00 David Cole <DLRdave at aol.com>:
>>> >> >>>> Fails for me, too, on a 3.5 year old Dell XPS laptop, Windows 8.1,
>>> >> >>>> with an Intel HD Graphics 4000 running driver version
>>> >> >>>> 10.18.10.3316.
>>> >> >>>> I
>>> >> >>>> get your TestCase app window with nothing but an empty (white)
>>> >> >>>> client
>>> >> >>>> region.
>>> >> >>>>
>>> >> >>>> An app we have built against VTK 6.2-ish with the old OpenGL using
>>> >> >>>> VolumeSmartMapper works fine on this very same machine.
>>> >> >>>>
>>> >> >>>> Another data point...
>>> >> >>
>>> >> >> Just one more thing David, did you try also running the example
>>> >> >> without any argument on this machine? (That would make it use a
>>> >> >> regular vtkRenderWindow/vtkRenderWindowInteractor). It would be
>>> >> >> interesting to know if the volume shows up then. That would confirm
>>> >> >> that the machine can show volumes using VTK 8+OpenGL2 backend, just
>>> >> >> not with QVTKOpenGLWidget, so would strengthen my theory that it has
>>> >> >> something to do with the new QVTKOpenGLWidget.
>>> >> >>
>>> >> >> Elvis
>>> >> >>
>>> >> >>>
>>> >> >>> Finally a reproduction, I was beginning to despair :) Thanks a lot
>>> >> >>> David.
>>> >> >>>
>>> >> >>> And just to make sure, Aron, did you run the test case as "TestCase
>>> >> >>> 1", with a parameter? That's the crucial thing, as otherwise it'll
>>> >> >>> just use a regular vtkRenderWindow/vtkRenderWindowInteractor (not
>>> >> >>> QVTKOpenGLWidget), and not exhibit the problem.
>>> >> >>>
>>> >> >>> Elvis
>>> >> >>>
>>> >> >>>>
>>> >> >>>>
>>> >> >>>> D
>>> >> >>>>
>>> >> >>>>
>>> >> >>>>
>>> >> >>>>
>>> >> >>>> On Thu, May 25, 2017 at 11:02 AM, Elvis Stansvik
>>> >> >>>> <elvis.stansvik at orexplore.com> wrote:
>>> >> >>>>> 2017-05-25 16:22 GMT+02:00 Aron Helser <aron.helser at kitware.com>:
>>> >> >>>>>> Hi Elvis,
>>> >> >>>>>> I've got a Win10 laptop (dell precision 5510), with an Optimus
>>> >> >>>>>> setup - both
>>> >> >>>>>> intel and nvidia graphics.
>>> >> >>>>>> With your test case, I'm able to see the volume running either
>>> >> >>>>>> with
>>> >> >>>>>> Intel or
>>> >> >>>>>> nVidia, so it doesn't repro for me.
>>> >> >>>>>> I've got Intel HD530 graphics, with driver version 21.20.16.4627
>>> >> >>>>>> Sorry,
>>> >> >>>>>> Aron
>>> >> >>>>>
>>> >> >>>>> Alright, bugger. Thanks for testing though!
>>> >> >>>>>
>>> >> >>>>> I won't be at the office until Monday again, but when I'm back
>>> >> >>>>> I'll
>>> >> >>>>> try experimenting with different driver versions.
>>> >> >>>>>
>>> >> >>>>> Elvis
>>> >> >>>>>
>>> >> >>>>>>
>>> >> >>>>>> On Wed, May 24, 2017 at 5:02 PM, Elvis Stansvik
>>> >> >>>>>> <elvis.stansvik at orexplore.com> wrote:
>>> >> >>>>>>>
>>> >> >>>>>>> 2017-05-24 22:49 GMT+02:00 Elvis Stansvik
>>> >> >>>>>>> <elvis.stansvik at orexplore.com>:
>>> >> >>>>>>> > 2017-05-24 22:20 GMT+02:00 Sankhesh Jhaveri
>>> >> >>>>>>> > <sankhesh.jhaveri at kitware.com>:
>>> >> >>>>>>> >> Hi Elvis,
>>> >> >>>>>>> >>
>>> >> >>>>>>> >> Unfortunately, I wasn’t able to reproduce this issue. :(
>>> >> >>>>>>> >>
>>> >> >>>>>>> >> I don’t have a Windows machine with an Intel graphics card
>>> >> >>>>>>> >> but
>>> >> >>>>>>> >> tried
>>> >> >>>>>>> >> ParaView on a couple of se Windows machines as well as a Mac
>>> >> >>>>>>> >> (with an
>>> >> >>>>>>> >> Intel
>>> >> >>>>>>> >> HD5600). Worked fine.
>>> >> >>>>>>> >
>>> >> >>>>>>> > Alright. Call for help then: Anyone else have a Windows 7
>>> >> >>>>>>> > machine with
>>> >> >>>>>>> > Intel graphics? Would be great if someone could reproduce.
>>> >> >>>>>>>
>>> >> >>>>>>> Forgot to say: Thanks a lot for trying to reproduce Sankhesh.
>>> >> >>>>>>>
>>> >> >>>>>>> I've now put up the compiled self-contained test case here:
>>> >> >>>>>>>
>>> >> >>>>>>>     http://dose.se/~estan/voltestcase-inst.zip (18 MB)
>>> >> >>>>>>>
>>> >> >>>>>>> If anyone with Windows (preferably Windows 7 if possible) +
>>> >> >>>>>>> Intel
>>> >> >>>>>>> graphics could try running this test case with "TestCase 1" and
>>> >> >>>>>>> see if
>>> >> >>>>>>> the volume shows up, that would be great.
>>> >> >>>>>>>
>>> >> >>>>>>> (Running the test case with argc > 2 will make it use
>>> >> >>>>>>> QVTKOpenGLWidget, and is where I'm having trouble).
>>> >> >>>>>>>
>>> >> >>>>>>> Elvis
>>> >> >>>>>>>
>>> >> >>>>>>> >
>>> >> >>>>>>> > I could put up my build of the test case as a self-contained
>>> >> >>>>>>> > .zip, to
>>> >> >>>>>>> > make it easy to test.
>>> >> >>>>>>> >
>>> >> >>>>>>> >>
>>> >> >>>>>>> >> At this point, I am inclined to think that the graphics
>>> >> >>>>>>> >> drivers
>>> >> >>>>>>> >> on your
>>> >> >>>>>>> >> Windows machine may need updating.
>>> >> >>>>>>> >
>>> >> >>>>>>> > Hm, but it works fine if I don't use QVTKOpenGLWidget, and
>>> >> >>>>>>> > just
>>> >> >>>>>>> > use a
>>> >> >>>>>>> > plain vtkRenderWindow + vtkRenderWindowInteractor. Wouldn't
>>> >> >>>>>>> > that
>>> >> >>>>>>> > suggest that the drivers are capable enough, and that the
>>> >> >>>>>>> > problem is
>>> >> >>>>>>> > somehow in QVTKOpenGLWidget (or QOpenGLWidget)?
>>> >> >>>>>>> >
>>> >> >>>>>>> > Elvis
>>> >> >>>>>>> >
>>> >> >>>>>>> >>
>>> >> >>>>>>> >>
>>> >> >>>>>>> >> On Wed, May 24, 2017 at 12:16 PM Sankhesh Jhaveri
>>> >> >>>>>>> >> <sankhesh.jhaveri at kitware.com> wrote:
>>> >> >>>>>>> >>>
>>> >> >>>>>>> >>> Okay thanks.
>>> >> >>>>>>> >>>
>>> >> >>>>>>> >>> I’ll take a look.
>>> >> >>>>>>> >>>
>>> >> >>>>>>> >>>
>>> >> >>>>>>> >>> On Wed, May 24, 2017 at 8:18 AM Elvis Stansvik
>>> >> >>>>>>> >>> <elvis.stansvik at orexplore.com> wrote:
>>> >> >>>>>>> >>>>
>>> >> >>>>>>> >>>> 2017-05-23 15:41 GMT+02:00 Sankhesh Jhaveri
>>> >> >>>>>>> >>>> <sankhesh.jhaveri at kitware.com>:
>>> >> >>>>>>> >>>> > Hi Elvis,
>>> >> >>>>>>> >>>> >
>>> >> >>>>>>> >>>> > Could you try downloading the ParaView nightly binary
>>> >> >>>>>>> >>>> > and
>>> >> >>>>>>> >>>> > test
>>> >> >>>>>>> >>>> > volume
>>> >> >>>>>>> >>>> > rendering there? You can use the wavelet source for a
>>> >> >>>>>>> >>>> > test
>>> >> >>>>>>> >>>> > dataset.
>>> >> >>>>>>> >>>> > ParaView
>>> >> >>>>>>> >>>> > uses the QVTKOpenGLWidget and it would be a good test
>>> >> >>>>>>> >>>> > before diving
>>> >> >>>>>>> >>>> > into the
>>> >> >>>>>>> >>>> > code.
>>> >> >>>>>>> >>>>
>>> >> >>>>>>> >>>> I tried the wavelet example with Paraview
>>> >> >>>>>>> >>>> 5.4.0-RC1-125-g435b603
>>> >> >>>>>>> >>>> 64-bit, and the problem is the same as in my minimal test
>>> >> >>>>>>> >>>> case. The
>>> >> >>>>>>> >>>> volume won't show up.
>>> >> >>>>>>> >>>>
>>> >> >>>>>>> >>>> It does show up if I switch to the software based ray cast
>>> >> >>>>>>> >>>> mapper
>>> >> >>>>>>> >>>> (but
>>> >> >>>>>>> >>>> not with GPU or smart, which I guess both result in the
>>> >> >>>>>>> >>>> GPU
>>> >> >>>>>>> >>>> one being
>>> >> >>>>>>> >>>> used).
>>> >> >>>>>>> >>>>
>>> >> >>>>>>> >>>> Please tell me if there's anything else I can do to help
>>> >> >>>>>>> >>>> debugging.
>>> >> >>>>>>> >>>> There are no errors printed when I run my test case.
>>> >> >>>>>>> >>>>
>>> >> >>>>>>> >>>> Elvis
>>> >> >>>>>>> >>>>
>>> >> >>>>>>> >>>> >
>>> >> >>>>>>> >>>> > Thanks,
>>> >> >>>>>>> >>>> > Sankhesh
>>> >> >>>>>>> >>>> >
>>> >> >>>>>>> >>>> >
>>> >> >>>>>>> >>>> > On Tue, May 23, 2017 at 6:50 AM Elvis Stansvik
>>> >> >>>>>>> >>>> > <elvis.stansvik at orexplore.com> wrote:
>>> >> >>>>>>> >>>> >>
>>> >> >>>>>>> >>>> >> Hi all,
>>> >> >>>>>>> >>>> >>
>>> >> >>>>>>> >>>> >> In porting to QVTKOpenGLWidget, I can't get volumes
>>> >> >>>>>>> >>>> >> rendered using
>>> >> >>>>>>> >>>> >> vtkGPUVolumeRayCastMapper to show up on Windows 7,
>>> >> >>>>>>> >>>> >> Intel
>>> >> >>>>>>> >>>> >> graphics
>>> >> >>>>>>> >>>> >> (HD
>>> >> >>>>>>> >>>> >> 4600). They show up fine on Linux. They also show up
>>> >> >>>>>>> >>>> >> fine
>>> >> >>>>>>> >>>> >> on
>>> >> >>>>>>> >>>> >> Windows 7
>>> >> >>>>>>> >>>> >> if using a plain VTK render window. I've tried turning
>>> >> >>>>>>> >>>> >> off
>>> >> >>>>>>> >>>> >> multisampling with setSamples(0) on the default
>>> >> >>>>>>> >>>> >> QSurfaceFormat.
>>> >> >>>>>>> >>>> >>
>>> >> >>>>>>> >>>> >> The below test case illustrates the issue. See the
>>> >> >>>>>>> >>>> >> attached
>>> >> >>>>>>> >>>> >> screenshots from running "TestCase" (left) and
>>> >> >>>>>>> >>>> >> "TestCase
>>> >> >>>>>>> >>>> >> 1"
>>> >> >>>>>>> >>>> >> (right).
>>> >> >>>>>>> >>>> >> The former uses a plain render window while the latter
>>> >> >>>>>>> >>>> >> uses the
>>> >> >>>>>>> >>>> >> new
>>> >> >>>>>>> >>>> >> QVTKOpenGLWidget. Notice how in the Windows 7
>>> >> >>>>>>> >>>> >> screenshot,
>>> >> >>>>>>> >>>> >> the
>>> >> >>>>>>> >>>> >> plain
>>> >> >>>>>>> >>>> >> VTK rendering works fine, but the QVTKOpenGLWidget one
>>> >> >>>>>>> >>>> >> is
>>> >> >>>>>>> >>>> >> not
>>> >> >>>>>>> >>>> >> showing
>>> >> >>>>>>> >>>> >> the volume.
>>> >> >>>>>>> >>>> >>
>>> >> >>>>>>> >>>> >> Versions used:
>>> >> >>>>>>> >>>> >>
>>> >> >>>>>>> >>>> >> Kubuntu Linux 16.04
>>> >> >>>>>>> >>>> >> VTK 8.0.0.rc1, OpenGL2
>>> >> >>>>>>> >>>> >> Qt 5.5.1
>>> >> >>>>>>> >>>> >>
>>> >> >>>>>>> >>>> >> Windows 7
>>> >> >>>>>>> >>>> >> VTK 8.0.0.rc1, OpenGL2
>>> >> >>>>>>> >>>> >> Qt 5.6.2
>>> >> >>>>>>> >>>> >>
>>> >> >>>>>>> >>>> >> Any ideas what the problem might be?
>>> >> >>>>>>> >>>> >>
>>> >> >>>>>>> >>>> >> I can provide a standalone .zip distribution of my
>>> >> >>>>>>> >>>> >> build
>>> >> >>>>>>> >>>> >> of the
>>> >> >>>>>>> >>>> >> test
>>> >> >>>>>>> >>>> >> case if you want.
>>> >> >>>>>>> >>>> >>
>>> >> >>>>>>> >>>> >> Note that this issue is orthogonal to the alpha issue I
>>> >> >>>>>>> >>>> >> reported
>>> >> >>>>>>> >>>> >> and
>>> >> >>>>>>> >>>> >> got solved in my other thread.
>>> >> >>>>>>> >>>> >>
>>> >> >>>>>>> >>>> >> Many thanks in advance,
>>> >> >>>>>>> >>>> >> Elvis
>>> >> >>>>>>> >>>> >>
>>> >> >>>>>>> >>>> >>
>>> >> >>>>>>> >>>> >> main.cpp:
>>> >> >>>>>>> >>>> >>
>>> >> >>>>>>> >>>> >> #include <algorithm>
>>> >> >>>>>>> >>>> >>
>>> >> >>>>>>> >>>> >> #include <vtkColorTransferFunction.h>
>>> >> >>>>>>> >>>> >> #include <vtkGenericOpenGLRenderWindow.h>
>>> >> >>>>>>> >>>> >> #include <vtkGPUVolumeRayCastMapper.h>
>>> >> >>>>>>> >>>> >> #include <vtkImageData.h>
>>> >> >>>>>>> >>>> >> #include <vtkNew.h>
>>> >> >>>>>>> >>>> >> #include <vtkPiecewiseFunction.h>
>>> >> >>>>>>> >>>> >> #include <vtkProperty.h>
>>> >> >>>>>>> >>>> >> #include <vtkRenderer.h>
>>> >> >>>>>>> >>>> >> #include <vtkRenderWindow.h>
>>> >> >>>>>>> >>>> >> #include <vtkRenderWindowInteractor.h>
>>> >> >>>>>>> >>>> >> #include <vtkVolume.h>
>>> >> >>>>>>> >>>> >> #include <vtkVolumeProperty.h>
>>> >> >>>>>>> >>>> >>
>>> >> >>>>>>> >>>> >> #include <QVTKOpenGLWidget.h>
>>> >> >>>>>>> >>>> >>
>>> >> >>>>>>> >>>> >> #include <QApplication>
>>> >> >>>>>>> >>>> >>
>>> >> >>>>>>> >>>> >> int main(int argc, char *argv[])
>>> >> >>>>>>> >>>> >> {
>>> >> >>>>>>> >>>> >>     auto defaultFormat =
>>> >> >>>>>>> >>>> >> QVTKOpenGLWidget::defaultFormat();
>>> >> >>>>>>> >>>> >>     defaultFormat.setSamples(0);
>>> >> >>>>>>> >>>> >>     QSurfaceFormat::setDefaultFormat(defaultFormat);
>>> >> >>>>>>> >>>> >>
>>> >> >>>>>>> >>>> >>     QApplication app(argc, argv);
>>> >> >>>>>>> >>>> >>
>>> >> >>>>>>> >>>> >>     // Set up volume rendering
>>> >> >>>>>>> >>>> >>     vtkNew<vtkColorTransferFunction> colorFunction;
>>> >> >>>>>>> >>>> >>     colorFunction->AddRGBPoint(0.0, 0.0, 0.0, 0.0);
>>> >> >>>>>>> >>>> >>     colorFunction->AddRGBPoint(1.0, 0.0, 0.0, 0.0);
>>> >> >>>>>>> >>>> >>
>>> >> >>>>>>> >>>> >>     vtkNew<vtkPiecewiseFunction> opacityFunction;
>>> >> >>>>>>> >>>> >>     opacityFunction->AddPoint(0.0, 0.0);
>>> >> >>>>>>> >>>> >>     opacityFunction->AddPoint(1.0, 1.0);
>>> >> >>>>>>> >>>> >>
>>> >> >>>>>>> >>>> >>     vtkNew<vtkImageData> imageData;
>>> >> >>>>>>> >>>> >>     imageData->SetExtent(0, 200, 0, 200, 0, 200);
>>> >> >>>>>>> >>>> >>     imageData->AllocateScalars(VTK_FLOAT, 1);
>>> >> >>>>>>> >>>> >>     std::fill_n(static_cast<float
>>> >> >>>>>>> >>>> >> *>(imageData->GetScalarPointer()),
>>> >> >>>>>>> >>>> >> 8000000, 0.01);
>>> >> >>>>>>> >>>> >>
>>> >> >>>>>>> >>>> >>     vtkNew<vtkGPUVolumeRayCastMapper> volumeMapper;
>>> >> >>>>>>> >>>> >>     volumeMapper->SetInputData(imageData.Get());
>>> >> >>>>>>> >>>> >>
>>> >> >>>>>>> >>>> >>     vtkNew<vtkVolumeProperty> volumeProperty;
>>> >> >>>>>>> >>>> >>
>>> >> >>>>>>> >>>> >>
>>> >> >>>>>>> >>>> >> volumeProperty->SetScalarOpacity(opacityFunction.Get());
>>> >> >>>>>>> >>>> >>     volumeProperty->SetColor(colorFunction.Get());
>>> >> >>>>>>> >>>> >>     volumeProperty->ShadeOff();
>>> >> >>>>>>> >>>> >>
>>> >> >>>>>>> >>>> >>     vtkNew<vtkVolume> volume;
>>> >> >>>>>>> >>>> >>     volume->SetMapper(volumeMapper.Get());
>>> >> >>>>>>> >>>> >>     volume->SetProperty(volumeProperty.Get());
>>> >> >>>>>>> >>>> >>
>>> >> >>>>>>> >>>> >>     vtkNew<vtkRenderer> renderer;
>>> >> >>>>>>> >>>> >>     renderer->AddVolume(volume.Get());
>>> >> >>>>>>> >>>> >>     renderer->SetBackground(1.0, 1.0, 1.0);
>>> >> >>>>>>> >>>> >>
>>> >> >>>>>>> >>>> >>     if (argc > 1) {
>>> >> >>>>>>> >>>> >>         // Render with QVTKOpenGLWidget
>>> >> >>>>>>> >>>> >>         vtkNew<vtkGenericOpenGLRenderWindow> window;
>>> >> >>>>>>> >>>> >>         window->AddRenderer(renderer.Get());
>>> >> >>>>>>> >>>> >>
>>> >> >>>>>>> >>>> >>         auto widget = new QVTKOpenGLWidget();
>>> >> >>>>>>> >>>> >>         widget->SetRenderWindow(window.Get());
>>> >> >>>>>>> >>>> >>         widget->show();
>>> >> >>>>>>> >>>> >>
>>> >> >>>>>>> >>>> >>         return app.exec();
>>> >> >>>>>>> >>>> >>     } else {
>>> >> >>>>>>> >>>> >>         // Render with "plain" render window /
>>> >> >>>>>>> >>>> >> interactor
>>> >> >>>>>>> >>>> >>         vtkNew<vtkRenderWindow> window;
>>> >> >>>>>>> >>>> >>         window->AddRenderer(renderer.Get());
>>> >> >>>>>>> >>>> >>
>>> >> >>>>>>> >>>> >>         vtkNew<vtkRenderWindowInteractor> interactor;
>>> >> >>>>>>> >>>> >>         interactor->SetRenderWindow(window.Get());
>>> >> >>>>>>> >>>> >>         interactor->Start();
>>> >> >>>>>>> >>>> >>
>>> >> >>>>>>> >>>> >>         return 0;
>>> >> >>>>>>> >>>> >>     }
>>> >> >>>>>>> >>>> >> }
>>> >> >>>>>>> >>>> >>
>>> >> >>>>>>> >>>> >>
>>> >> >>>>>>> >>>> >> CMakeLists.txt:
>>> >> >>>>>>> >>>> >>
>>> >> >>>>>>> >>>> >> cmake_minimum_required(VERSION 3.1)
>>> >> >>>>>>> >>>> >>
>>> >> >>>>>>> >>>> >> project(TestCase)
>>> >> >>>>>>> >>>> >>
>>> >> >>>>>>> >>>> >> find_package(VTK 8.0 COMPONENTS
>>> >> >>>>>>> >>>> >>     vtkCommonCore
>>> >> >>>>>>> >>>> >>     vtkCommonDataModel
>>> >> >>>>>>> >>>> >>     vtkCommonExecutionModel
>>> >> >>>>>>> >>>> >>     vtkCommonMath
>>> >> >>>>>>> >>>> >>     vtkFiltersSources
>>> >> >>>>>>> >>>> >>     vtkGUISupportQt
>>> >> >>>>>>> >>>> >>     vtkInteractionStyle
>>> >> >>>>>>> >>>> >>     vtkRenderingCore
>>> >> >>>>>>> >>>> >>     vtkRenderingOpenGL2
>>> >> >>>>>>> >>>> >>     vtkRenderingVolume
>>> >> >>>>>>> >>>> >>     vtkRenderingVolumeOpenGL2
>>> >> >>>>>>> >>>> >>     REQUIRED
>>> >> >>>>>>> >>>> >> )
>>> >> >>>>>>> >>>> >>
>>> >> >>>>>>> >>>> >> find_package(Qt5Widgets REQUIRED)
>>> >> >>>>>>> >>>> >>
>>> >> >>>>>>> >>>> >> add_executable(TestCase main.cpp)
>>> >> >>>>>>> >>>> >>
>>> >> >>>>>>> >>>> >> target_link_libraries(TestCase PUBLIC
>>> >> >>>>>>> >>>> >>     vtkCommonCore
>>> >> >>>>>>> >>>> >>     vtkCommonDataModel
>>> >> >>>>>>> >>>> >>     vtkCommonExecutionModel
>>> >> >>>>>>> >>>> >>     vtkCommonMath
>>> >> >>>>>>> >>>> >>     vtkFiltersSources
>>> >> >>>>>>> >>>> >>     vtkGUISupportQt
>>> >> >>>>>>> >>>> >>     vtkInteractionStyle
>>> >> >>>>>>> >>>> >>     vtkRenderingCore
>>> >> >>>>>>> >>>> >>     vtkRenderingOpenGL2
>>> >> >>>>>>> >>>> >>     vtkRenderingVolume
>>> >> >>>>>>> >>>> >>     vtkRenderingVolumeOpenGL2
>>> >> >>>>>>> >>>> >>     Qt5::Widgets
>>> >> >>>>>>> >>>> >> )
>>> >> >>>>>>> >>>> >>
>>> >> >>>>>>> >>>> >> target_include_directories(TestCase PUBLIC
>>> >> >>>>>>> >>>> >>     ${VTK_INCLUDE_DIRS}
>>> >> >>>>>>> >>>> >> )
>>> >> >>>>>>> >>>> >>
>>> >> >>>>>>> >>>> >> target_compile_definitions(TestCase PUBLIC
>>> >> >>>>>>> >>>> >>     ${VTK_DEFINITIONS}
>>> >> >>>>>>> >>>> >> )
>>> >> >>>>>>> >>>> >>
>>> >> >>>>>>> >>>> >> set_target_properties(TestCase PROPERTIES
>>> >> >>>>>>> >>>> >>     CXX_STANDARD 14
>>> >> >>>>>>> >>>> >>     CXX_STANDARD_REQUIRED ON
>>> >> >>>>>>> >>>> >> )
>>> >> >>>>>>> >>>> >> _______________________________________________
>>> >> >>>>>>> >>>> >> 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:
>>> >> >>>>>>> >>>> >>
>>> >> >>>>>>> >>>> >> http://public.kitware.com/mailman/listinfo/vtk-developers
>>> >> >>>>>>> >>>> >>
>>> >> >>>>>>> >>>> > --
>>> >> >>>>>>> >>>> >
>>> >> >>>>>>> >>>> > Sankhesh Jhaveri
>>> >> >>>>>>> >>>> >
>>> >> >>>>>>> >>>> > Sr. Research & Development Engineer | Kitware | (518)
>>> >> >>>>>>> >>>> > 881-4417
>>> >> >>>>>>> >>>
>>> >> >>>>>>> >>> --
>>> >> >>>>>>> >>>
>>> >> >>>>>>> >>> Sankhesh Jhaveri
>>> >> >>>>>>> >>>
>>> >> >>>>>>> >>> Sr. Research & Development Engineer | Kitware | (518)
>>> >> >>>>>>> >>> 881-4417
>>> >> >>>>>>> >>
>>> >> >>>>>>> >> --
>>> >> >>>>>>> >>
>>> >> >>>>>>> >> Sankhesh Jhaveri
>>> >> >>>>>>> >>
>>> >> >>>>>>> >> Sr. Research & Development Engineer | Kitware | (518)
>>> >> >>>>>>> >> 881-4417
>>> >> >>>>>>> _______________________________________________
>>> >> >>>>>>> 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:
>>> >> >>>>>>> http://public.kitware.com/mailman/listinfo/vtk-developers
>>> >> >>>>>>>
>>> >> >>>>>>
>>> >> >>>>> _______________________________________________
>>> >> >>>>> 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:
>>> >> >>>>> http://public.kitware.com/mailman/listinfo/vtk-developers
>>> >> >>>>>
>>> >> _______________________________________________
>>> >> 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:
>>> >> http://public.kitware.com/mailman/listinfo/vtk-developers
>>> >>
>>> >
>>> >
>>> >
>>> > --
>>> > Ken Martin PhD
>>> > Distinguished Engineer
>>> > Kitware Inc.
>>> > 28 Corporate Drive
>>> > Clifton Park NY 12065
>>> >
>>> > This communication, including all attachments, contains confidential and
>>> > legally privileged information, and it is intended only for the use of
>>> > the
>>> > addressee.  Access to this email by anyone else is unauthorized. If you
>>> > are
>>> > not the intended recipient, any disclosure, copying, distribution or any
>>> > action taken in reliance on it is prohibited and may be unlawful. If you
>>> > received this communication in error please notify us immediately and
>>> > destroy the original message.  Thank you.
>>
>>
>>
>>
>> --
>> Ken Martin PhD
>> Distinguished Engineer
>> Kitware Inc.
>> 28 Corporate Drive
>> Clifton Park NY 12065
>>
>> This communication, including all attachments, contains confidential and
>> legally privileged information, and it is intended only for the use of the
>> addressee.  Access to this email by anyone else is unauthorized. If you are
>> not the intended recipient, any disclosure, copying, distribution or any
>> action taken in reliance on it is prohibited and may be unlawful. If you
>> received this communication in error please notify us immediately and
>> destroy the original message.  Thank you.


More information about the vtk-developers mailing list