# VTK9: Problem with display helper object factory

**URL:** https://discourse.vtk.org/t/vtk9-problem-with-display-helper-object-factory/3287
**Category:** Support
**Created:** [May 12, 2020, 5:55pm UTC](https://discourse.vtk.org/t/vtk9-problem-with-display-helper-object-factory/3287 "2020-05-12T17:55:40Z")
**Posts on this page:** 3
**Page:** 1

<div class="post-metadata">

### Author: ![codeling](https://discourse.vtk.org/user_avatar/discourse.vtk.org/codeling/32/3792_2.png) [@codeling](https://discourse.vtk.org/u/codeling)
#### Post date: [May 12, 2020, 5:55pm UTC](https://discourse.vtk.org/t/vtk9-problem-with-display-helper-object-factory/3287/1 "2020-05-12T17:55:40Z")

</div>

Trying to build and run our application against VTK 9, I’m running into the trouble that when we create our 3D volume rendering pipeline, it crashes on line 647 of vtkFixedPointVolumeRayCastMapper.cxx (apparently there is no vtkRayCastImageDisplayHelper implementation registered). However, RenderingVolumeOpenGL2 is in the list of components we require from VTK on FIND\_PACKAGE, and we link our target subsequently against VTK::RenderingVolumeOpenGL2. Shouldn’t this be enough to make the vtkOpenGLRayCastImageDisplayHelper available? At least it used to be with version 8.x… or what else could we be missing?

Regarding such an error, I only found this rather old report on the mailing list: [https://public.kitware.com/pipermail/vtkusers/2014-July/084594.html](https://public.kitware.com/pipermail/vtkusers/2014-July/084594.html), for which the fix back then was to load RenderVolumeOpenGL module; checking here: [https://vtk.org/Wiki/VTK/VTK\_6\_Migration/Factories\_now\_require\_defines](https://vtk.org/Wiki/VTK/VTK_6_Migration/Factories_now_require_defines)  
which mentions the VTK\_USE\_FILE automating this module adding; now that VTK\_USE\_FILE is not needed/supported anymore, is there something else required for the factories to work properly?  
I’ve seen the documentation of the “new module system” ([https://vtk.org/doc/nightly/html/md\_\_home\_kitware\_dashboards\_buildbot\_vtk\_nightly-master-ike-linux-shared-release\_doc\_nightly\_osm749dd663df9981384f2598c108aac3b0.html](https://vtk.org/doc/nightly/html/md__home_kitware_dashboards_buildbot_vtk_nightly-master-ike-linux-shared-release_doc_nightly_osm749dd663df9981384f2598c108aac3b0.html)), but this seems to be internal vtk development info, not for me as a user of VTK, right?  
I didn’t find a migration guide for VTK9 yet - I guess it is still in the works ([https://gitlab.kitware.com/vtk/vtk/issues/17696](https://gitlab.kitware.com/vtk/vtk/issues/17696)). I’d be happy to contribute there what little I can!

Anyway, in the spirit of following the “most important design guideline” as put by Scott Meyers, namely, " \*Make interfaces easy to use correctly and hard to use incorrectly" ([https://www.aristeia.com/Papers/IEEE\_Software\_JulAug\_2004\_revised.htm](https://www.aristeia.com/Papers/IEEE_Software_JulAug_2004_revised.htm)), wouldn’t it in general be a good idea to provide at least a warning if no concrete implementation is available for an object requested from a factory, and a guidance on how to enable one?

---

<div class="post-metadata">

### Author: ![codeling](https://discourse.vtk.org/user_avatar/discourse.vtk.org/codeling/32/3792_2.png) [@codeling](https://discourse.vtk.org/u/codeling)
#### Post date: [May 12, 2020, 6:33pm UTC](https://discourse.vtk.org/t/vtk9-problem-with-display-helper-object-factory/3287/2 "2020-05-12T18:33:37Z")

</div>

Ah, through

> [@VTK CMake Usage](https://discourse.vtk.org/t/vtk-cmake-usage/3275):
>
> How does one find and use VTK in CMake with 9.0.0. I’m using find\_package(VTK REQUIRED …), and it’s seems happy, although the only output appears to be finding X11 and Xt. All the documentation that I can find is conflicting, and appears to be outdated. I would appreciate it if someone could point me to up-to-date documentation or an example. I just need to know what variable to use to get the include/library paths, and libraries.

I came to this:  
[https://gitlab.kitware.com/vtk/vtk/-/blob/1abfe43a7b32b4606964005627b6c40723883a2e/Documentation/Doxygen/ModuleMigration.md](https://gitlab.kitware.com/vtk/vtk/-/blob/1abfe43a7b32b4606964005627b6c40723883a2e/Documentation/Doxygen/ModuleMigration.md)  
and it seems indeed there are some additional steps required. I’ll try that and report back my findings!

---

<div class="post-metadata">

### Author: ![codeling](https://discourse.vtk.org/user_avatar/discourse.vtk.org/codeling/32/3792_2.png) [@codeling](https://discourse.vtk.org/u/codeling)
#### Post date: [May 12, 2020, 7:39pm UTC](https://discourse.vtk.org/t/vtk9-problem-with-display-helper-object-factory/3287/3 "2020-05-12T19:39:16Z")

</div>

Issue fixed with info from above post!
