* Connects a VTK renderer with a vtk renderwindow. The renderer will be rendered in the foreground. * With forceAbsoluteBackground set true a renderer can be placed at the absolute foreground of the scene. * Multiple calls with forceAbsoluteForeground set true will set the latest registered renderer as foreground. */
| 99 | * Multiple calls with forceAbsoluteForeground set true will set the latest registered renderer as foreground. |
| 100 | */ |
| 101 | void mitk::VtkLayerController::InsertForegroundRenderer(vtkSmartPointer<vtkRenderer> renderer, |
| 102 | bool forceAbsoluteForeground) |
| 103 | { |
| 104 | if (renderer == nullptr) |
| 105 | return; |
| 106 | |
| 107 | // Remove renderer if it already exists |
| 108 | RemoveRenderer(renderer); |
| 109 | |
| 110 | if (forceAbsoluteForeground) |
| 111 | { |
| 112 | auto it = m_ForegroundRenderers.begin(); |
| 113 | m_ForegroundRenderers.insert(it, renderer); |
| 114 | } |
| 115 | else |
| 116 | m_ForegroundRenderers.push_back(renderer); |
| 117 | |
| 118 | renderer->PreserveDepthBufferOn(); |
| 119 | UpdateLayers(); |
| 120 | } |
| 121 | /** |
| 122 | * Returns the Scene Renderer |
| 123 | */ |