[vtkusers] Multiple volumes rendering with vtkGPUVolumeRayCastMapper or similar

Alvaro Sanchez alvaro.sanchez at kitware.com
Thu Aug 25 23:06:41 EDT 2016

Hi Alberto,

as you have noticed, multi-volume rendering is currently not supported in
the vtkGPUVolumeRayCastMapper.  If you are building VTK with OpenGL2
however, it supports independent components so (depending on your use case)
you might be able to render up to 4 volumes (one per component), provided
you can arrange them in a four component array (this has the limitation
that each component will need to have the same dimensions).  That said, we
are working on giving support for multiple volumes in the next VTK release.

With regards to the solution you mentioned (https://github.com/bozorgi/VTK
MultiVolumeRayCaster), you could use it temporarily if it would solve your
problem better than fitting the volumes as independent components.  It
seems to implement a similar approach as we would do (connecting various
inputs/ properties to the mapper) so it should not be extremely difficult
to migrate to the official implementation in the future.  I have not tried
it myself but please do let us know if you have any remarks once you try
it.  As far as I know, if the python bindings are not explicitly disabled
for these new classes then they should be also wrapped.


> ---------- Forwarded message ----------
> From: amdelaossa <adelaossa at gmail.com>
> Date: Thu, Aug 25, 2016 at 10:00 AM
> Subject: [vtkusers] Multiple volumes rendering with
> vtkGPUVolumeRayCastMapper or similar
> To: vtkusers at vtk.org
> Dear all,
> we (a research team
> <http://plasma.desy.de/research/simulation_and_theory/index_eng.html> in
> DESY, Germany) are strongly interested in rendering multiple data volumes
> in the same view with VTK.
> We chose VTK for our 3D visualisation project on beam-plasma interactions
> due to its extended functionality and features,
> its open source character and because it is written in C++ with bindings
> for python.
> However, we will require to show multiple volumes in the same view
> (representing the data of different particle species in our simulations).
> We are currently using a vtkGPUVolumeRayCastMapper object for each data
> set, which is then connected to a vtkVolume.
> The different vtkVolume objects are then added to the vtkRenderer.
> We have tried to use different vtkRenderer objects for the different
> vtkVolumes,
> but still only the first volume on the first vtkRenderer is displayed.
> Searching in the web, we have found the following (potential) solution:
> https://github.com/bozorgi/VTKMultiVolumeRayCaster
> which is published here:
> http://www.ncbi.nlm.nih.gov/pubmed/24841148
> It consists on new vtk classes to handle multiple volumes rendering.
> As it might work well for our purposes, we would like to ask your opinion
> about this new classes.
> Are you planning to incorporate something like this in the official VTK
> distribution soon?
> If not, we will be interested in incorporating this new class into our
> personal VTK installation.
> Then the question is: Will be the python bindings automatically generated
> for these new classes?
> Thanks a lot for your support!
> Best regards,
> Alberto
> _______________________________________________
> Powered by www.kitware.com
> Visit other Kitware open-source projects at http://www.kitware.com/opensou
> rce/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:
> http://public.kitware.com/mailman/listinfo/vtkusers

Alvaro Sanchez
Kitware, Inc.
Senior R&D Engineer
21 Corporate Drive
Clifton Park, NY 12065-8662
Phone: 518-881-4901
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://public.kitware.com/pipermail/vtkusers/attachments/20160825/cd8cae30/attachment.html>

More information about the vtkusers mailing list