Dear friends of rendering issues,

I recently implemented an OpenGL based mapper for a custom data object and ran 
into a problem with mitk::GLMapper::MitkRender() [1]. This function assumes 
that everything that is ever rendered by a mapper is opaque. This breaks the 
correct rendering order proposed by VTK which is first opaque objects then 
translucent ones. Is there any reason for the current behavior or the 
restriction to opaque objects? Otherwise I'd propose to reformulate the method 
as below. This version works fine for me. Any objections?


Kind regards,

Daniel


[1] 
http://mitk.org/git/?p=MITK.git;a=blob;f=Modules/LegacyGL/mitkGLMapper.cpp;h=043e31b62419c5f3a00784e1c2f80579504361a9;hb=1f2ae20d52c6f4437dbb3ce94860cb858b4ba8a7


void

mitk::GLMapper::MitkRender(mitk::BaseRenderer* renderer, 
mitk::VtkPropRenderer::RenderType type)
{
  bool visible = true;
  GetDataNode()->GetVisibility(visible, renderer, "visible");
  if ( !visible ) return;

  float opacity = 1.0;
  GetDataNode()->GetOpacity(opacity, renderer);

  // Ensure that Paint is called only once _and_ at the right moment, i.e.
  // when VTK decides that opaque or translucent objects should be rendered.
  // If this is not done right, then we'd either render multiple time and/or
  // get problems with mixing opaque and translucent objects.
  if ( opacity < 1.0 && type == mitk::VtkPropRenderer::Translucent ) {
    Paint(renderer);
  } else if ( opacity >= 1.0 && type == mitk::VtkPropRenderer::Opaque ) {
    Paint(renderer);
  }

}




--

Dr. Daniel Maleike, Mint Medical GmbH

Friedrich-Ebert-Straße 2, 69221 Dossenheim/Heidelberg
Geschäftsführer: Dr. Matthias Baumhauer, Registergericht Mannheim, HRB 709351
------------------------------------------------------------------------------
Attend Shape: An AT&T Tech Expo July 15-16. Meet us at AT&T Park in San
Francisco, CA to explore cutting-edge tech and listen to tech luminaries
present their vision of the future. This family event has something for
everyone, including kids. Get more information and register today.
http://sdm.link/attshape
_______________________________________________
mitk-users mailing list
mitk-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mitk-users

Reply via email to