vtk multiRender绘制及交互

vtk绘制时可以利用vtkrenderwindow的多层render功能将不同render添加到一个renderwindow,效果如下图

 renderWindow->SetNumberOfLayers(2);
 renderer->SetLayer(1);
 renderer2->SetLayer(0);
 renderWindow->AddRenderer(renderer2);
 renderWindow->AddRenderer(renderer);

vtk multiRender绘制及交互_第1张图片

这样会产生一个问题:vtkRenderWindowInteractor交互时会依据addrender的先后顺序,只对第一个加入的render产生交互,如果想让interactor对所有render产生相同的交互或者对指定render交互则需自己派生vtkInterctionrStyle;

eg:

myInteractorStyle->SetRendererCollection(renderWindow()->GetRenderers());
...
ren->SetInteractorStyle(myInteractorStyle);

你可能感兴趣的:(三维图像处理)