Hello,<br>
I had the same problem with multi-layers and interaction. After reading
vtkInteractorStyle source file, I've noticed that interactions apply
only on the "current layer" (dependant on the
renderWindow.addRenderer(...) order).<br>
A solution is to create your own override vtkInteractorStyle classe with multi-layer management.<br>
myInteractorStyle->SetRendererCollection(renderWindow()->GetRenderers());<br>
...<br>
ren->SetInteractorStyle(myInteractorStyle);<br>
<br>
Regards,<br>
Julien<br><br><div><span class="gmail_quote">2008/4/9, CLEMENTS, ROBERT <<a href="mailto:rclement@kent.edu">rclement@kent.edu</a>>:</span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<div>
<p><font size="2">I may have figured this out. Try setting the interactorstyle on your render window with something similar to the following. If i comment out the last 3 lines only 1 of my layers interacts. See if that helps<br>
<br>
<br>
set iact [[$renderWidget GetRenderWindow] GetInteractor]<br>
set renWin2 [$renderWidget GetRenderWindow]<br>
vtkInteractorStyleTrackballCamera style<br>
$iact SetInteractorStyle style<br>
$iact SetRenderWindow $renWin2<br>
$iact SetDesiredUpdateRate 0<br>
<br>
<br>
Rob</font></p><div><span class="e" id="q_11933e34be515737_1"><font size="2"><br>
<br>
<br>
I tried precisely that. Without success.<br>
Maybe there is some detail I overlooked.<br>
DO you have any example-code ?<br>
<br>
Kind regards,<br>
oliver<br>
<br>
2008/4/9, CLEMENTS, ROBERT <<a href="mailto:rclement@kent.edu" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">rclement@kent.edu</a>>:<br>
><br>
> I to have had similar problems but it seems that using something similar<br>
> to below;<br>
><br>
> ren4 SetActiveCamera [ren2 GetActiveCamera]<br>
><br>
> makes both layers react to the same input. Hope this helps .<br>
><br>
> Rob<br>
><br>
><br>
> Hello Steve,<br>
> I am glad someone else has the same problems to solve ;)<br>
> However, I fear you are right : The books do not contain any<br>
> documentation on this. I even searched the archives without success.<br>
> There is only one rudimentary CPP example.<br>
> Anyway, I will try to do the same as you are doing and<br>
> work myself through it. So maybe we can help each other out ?<br>
><br>
> Kind regards,<br>
> Oliver<br>
><br>
> 2008/4/8, Steve Chall <<a href="mailto:stevec@renci.org" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">stevec@renci.org</a>>:<br>
> ><br>
> ><br>
> > >Message: 18<br>
> > >Date: Tue, 8 Apr 2008 14:12:32 +0200<br>
> > >From: "Oliver Kania" <<a href="mailto:ptw.freiburg@googlemail.com" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">ptw.freiburg@googlemail.com</a>><br>
> > >Subject: [vtkusers] Multiple rendering layers reacting to interaction<br>
> > >To: <a href="mailto:vtkusers@vtk.org" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">vtkusers@vtk.org</a><br>
> > >Message-ID:<br>
> > > <<a href="mailto:e22fb1100804080512q2b1ad655oee6f3581183bfb60@mail.gmail.com" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">e22fb1100804080512q2b1ad655oee6f3581183bfb60@mail.gmail.com</a>><br>
> > >Content-Type: text/plain; charset="iso-8859-1"<br>
> > ><br>
> > >Hello,<br>
> > >my application has several layers :<br>
> > ><br>
> > >vtkRenderer RenderImage2 = new vtkRenderer();<br>
> > >vtkRenderer RenderImage = new vtkRenderer();<br>
> > ><br>
> > > RenderImage.SetLayer(0);<br>
> > > RenderImage2.SetLayer(1);<br>
> > ><br>
> > > RenderImage.SetInteractive(1);<br>
> > > RenderImage2.SetInteractive(1);<br>
> > ><br>
> > ><br>
> > > RenderImage.SetBackground(0.0, 0.0, 0.3);<br>
> > ><br>
> > > vtkRenderWindow renWin = new vtkRenderWindow();<br>
> > > renWin.SetNumberOfLayers(2);<br>
> > > renWin.AddRenderer(RenderImage2);<br>
> > > renWin.AddRenderer(RenderImage);<br>
> > ><br>
> > >vtkRenderWindowInteractor iren = new vtkRenderWindowInteractor();<br>
> > >iren.SetRenderWindow(renWin);<br>
> > >//set image mode interaction style<br>
> > >vtkInteractorStyleImage interactor = new vtkInteractorStyleImage();<br>
> > >ren.SetInteractorStyle(interactor);<br>
> > ><br>
> > >What I find is that only one layer reacts to interaction.<br>
> > >Since I used SetInteractive(), I was expecting that both layers do<br>
> react.<br>
> > >More generally, I want to have an arbitrary number of layers that do<br>
> > >react to the same interaction. Maybe it is somehow possible to link<br>
> > >the cameras of the renderers ?<br>
> > >(I tried Renderer1.setCamera(Renderer2.getCamera()) but that does<br>
> > >not work)<br>
> > ><br>
> > >kind regards,<br>
> > >Oliver<br>
> ><br>
> > Thank you, Oliver, for bringing layered rendering to my attention. This<br>
> > sounds like it could resolve some visibility issues I'm experiencing.<br>
> > However, I can't seem to find very much documentation on this<br>
> > feature. I've<br>
> > bought and looked through the books, read the code in vtkRenderer.h, and<br>
> > checked online, and pretty much all I've found out is that layers are<br>
> > numbered and all but the bottom are transparent. I can and, if<br>
> necessary,<br>
> > will work through it empirically, i.e., by writing code and seeing what<br>
> > happens. But it would be valuable and probably much more efficient if<br>
> > there<br>
> > were some more thorough documentation than what I've found thus far.<br>
> Can<br>
> > anyone point me to it? Admittedly, once again I may have just<br>
> overlooked<br>
> > something obvious, but if so I'd appreciate someone shaking me out of my<br>
> > tunnel vision. Thanks all.<br>
> ><br>
> > -Steve<br>
> ><br>
> ><br>
> > _______________________________________________<br>
> > This is the private VTK discussion list.<br>
> > Please keep messages on-topic. Check the FAQ at:<br>
> > <a href="http://www.vtk.org/Wiki/VTK_FAQ" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">http://www.vtk.org/Wiki/VTK_FAQ</a><br>
> > Follow this link to subscribe/unsubscribe:<br>
> > <a href="http://www.vtk.org/mailman/listinfo/vtkusers" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">http://www.vtk.org/mailman/listinfo/vtkusers</a><br>
> ><br>
><br>
><br>
<br>
</font></span></div>
<p></p>
</div>
<br>_______________________________________________<br>
This is the private VTK discussion list.<br>
Please keep messages on-topic. Check the FAQ at: <a onclick="return top.js.OpenExtLink(window,event,this)" href="http://www.vtk.org/Wiki/VTK_FAQ" target="_blank">http://www.vtk.org/Wiki/VTK_FAQ</a><br>
Follow this link to subscribe/unsubscribe:<br>
<a onclick="return top.js.OpenExtLink(window,event,this)" href="http://www.vtk.org/mailman/listinfo/vtkusers" target="_blank">http://www.vtk.org/mailman/listinfo/vtkusers</a><br>
<br></blockquote></div><br>