[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:50:19 EDT 2017


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
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