<HTML>
<HEAD>
<TITLE>caching images (WAS: messy legend)</TITLE>
</HEAD>
<BODY>
<FONT FACE="Calibri, Verdana, Helvetica, Arial"><SPAN STYLE='font-size:11pt'>Rather than preventing renderings for the specific case of delivering images from the server, I am an advocate of caching the rendering in all cases. &nbsp;The interaction with scalar bars and other 2D widgets is a big reason for why I would like to see this.<BR>
<BR>
We have talked about doing this for a long time (see bug #3924) and actually had an implementation for a brief period of time. &nbsp;The problem was that we kept grabbing things that we did not render, for example other windows on top of the render window. &nbsp;Now might be a good time to readdress this though. &nbsp;We have already spent a lot of work getting the screen capturing working for saving screen shots. &nbsp;Perhaps we could apply this work to caching images for every still render to save on re-rendering.<BR>
<BR>
-Ken<BR>
<BR>
<BR>
On 9/27/09 1:11 PM, &quot;Utkarsh Ayachit&quot; &lt;<a href="utkarsh.ayachit@kitware.com">utkarsh.ayachit@kitware.com</a>&gt; wrote:<BR>
<BR>
</SPAN></FONT><BLOCKQUOTE><FONT FACE="Calibri, Verdana, Helvetica, Arial"><SPAN STYLE='font-size:11pt'>Well, don't forget the scalar bar needs to be rendered for tile<BR>
displays. I don't think a real fix will have anything to do with the<BR>
scalar bar, but more like when a widget interaction happens, instead<BR>
of triggering a render request on the view, it has to now decide which<BR>
renderer this widget the user is interacting with lies in (since in<BR>
case of 3D widgets like implicit plane widget which is rendered on the<BR>
server side we need the regular rendering) and if it's the 2D<BR>
renderer, then do some fancy stuff to simply render locally (except in<BR>
tile-display mode) in the 2D renderer while reusing the previously<BR>
delivered image for the 3D renderer. This may just be a tad too<BR>
complex to simply handle the interaction with the scalar bar widget<BR>
use-case.<BR>
<BR>
A more general purpose solution would be a mechanism to avoid<BR>
server-side renders and deliveries unless the server-side scene in the<BR>
3D renderer has changed. This will also help avoiding the re-renders<BR>
when another window that covered the ParaView window is moved or such.<BR>
But there possibly, the complexity lies in truthfully determining that<BR>
the last rendered scene is still valid.<BR>
<BR>
Utkarsh<BR>
<BR>
2009/9/27 Berk Geveci &lt;<a href="berk.geveci@kitware.com">berk.geveci@kitware.com</a>&gt;:<BR>
&gt; Hi Burlen,<BR>
&gt;<BR>
&gt; I totally agree. If possible, we should change it so that there is no<BR>
&gt; server side render and image delivery when interacting with the scalar<BR>
&gt; bar widget. I am guessing it will involve subclassing the scalar bar<BR>
&gt; widget and changes to some other stuff. Utkarsh, what do you think?<BR>
&gt;<BR>
&gt; -berk<BR>
&gt;<BR>
&gt; 2009/9/27 burlen &lt;<a href="burlen.loring@gmail.com">burlen.loring@gmail.com</a>&gt;:<BR>
&gt;&gt; Hi Berk,<BR>
&gt;&gt;<BR>
&gt;&gt; I don't doubt you but I am surprised to learn that the scalar bar widget<BR>
&gt;&gt; is being rendered client side. In client-server mode as I interact with<BR>
&gt;&gt; the scalar bar widget the scene is re-render server side and an image is<BR>
&gt;&gt; shipped with every mouse move. To see that this is so put a print<BR>
&gt;&gt; statements in vtkPVDesktopDeliveryClient::ReceiveImageFromServer. Since<BR>
&gt;&gt; the scalar bar widget is rendered client side, is there really a need to<BR>
&gt;&gt; re-render and ship the image form the server side with each scalar bar<BR>
&gt;&gt; widget interaction? Preventing these server side render/image transfers<BR>
&gt;&gt; would certainly improve remote interactivity.<BR>
&gt;&gt;<BR>
&gt;&gt; By the way can you point me to where PV renders the scalar bar widget?<BR>
&gt;&gt;<BR>
&gt;&gt; Burlen<BR>
&gt;&gt;<BR>
&gt;&gt; Berk Geveci wrote:<BR>
&gt;&gt;&gt; I believe that the legend is always rendered on the client so changing<BR>
&gt;&gt;&gt; to remote render would probably have no effect.<BR>
&gt;&gt;&gt;<BR>
&gt;&gt;&gt; 2009/9/26 burlen &lt;<a href="burlen.loring@gmail.com">burlen.loring@gmail.com</a>&gt;:<BR>
&gt;&gt;&gt;<BR>
&gt;&gt;&gt;&gt;&gt; Compiling mesa3d is difficult to me.<BR>
&gt;&gt;&gt;&gt;&gt;<BR>
&gt;&gt;&gt;&gt; The mesa autoconf files never have worked for me, but, the pre-packaged make<BR>
&gt;&gt;&gt;&gt; files always have. &quot;make linux&quot;.<BR>
&gt;&gt;&gt;&gt;<BR>
&gt;&gt;&gt;&gt;<BR>
&gt;&gt;&gt;&gt;&gt; If I run paraview on the server and display it on the server,then<BR>
&gt;&gt;&gt;&gt;&gt; everything is ok. But if I use my laptop ,log into the server,then plot with<BR>
&gt;&gt;&gt;&gt;&gt; paraview on the server and display the result on the laptop,then I get the<BR>
&gt;&gt;&gt;&gt;&gt; bad legend again.<BR>
&gt;&gt;&gt;&gt;&gt;<BR>
&gt;&gt;&gt;&gt; When you connect to the server from your laptop: Go to<BR>
&gt;&gt;&gt;&gt; &quot;Edit-&gt;Settings-&gt;Render View-&gt;Server&quot;. See that &quot;remote Render Threshold&quot; is<BR>
&gt;&gt;&gt;&gt; checked and set the value to 0. That will make sure rendering happens on the<BR>
&gt;&gt;&gt;&gt; server and not on your laptop.<BR>
&gt;&gt;&gt;&gt;<BR>
&gt;&gt;&gt;&gt; linzhenhua wrote:<BR>
&gt;&gt;&gt;&gt;<BR>
&gt;&gt;&gt;&gt;&gt; Hi,Thanks for your reply. I try to narrow the problem as follows. I wonder<BR>
&gt;&gt;&gt;&gt;&gt; if I could get some other hints. Compiling mesa3d is difficult to me.<BR>
&gt;&gt;&gt;&gt;&gt;<BR>
&gt;&gt;&gt;&gt;&gt; I install linux on a PC today,let's call it server. If I run paraview on<BR>
&gt;&gt;&gt;&gt;&gt; the server and display it on the server,then everything is ok. But if I use<BR>
&gt;&gt;&gt;&gt;&gt; my laptop ,log into the server,then plot with paraview on the server and<BR>
&gt;&gt;&gt;&gt;&gt; display the result on the laptop,then I get the bad legend again.<BR>
&gt;&gt;&gt;&gt;&gt;<BR>
&gt;&gt;&gt;&gt;&gt; Any hints?<BR>
&gt;&gt;&gt;&gt;&gt;<BR>
&gt;&gt;&gt;&gt;&gt;<BR>
&gt;&gt;&gt;&gt;&gt;<BR>
&gt;&gt;&gt;&gt;&gt; --<BR>
&gt;&gt;&gt;&gt;&gt;<BR>
&gt;&gt;&gt;&gt;&gt; 在2009-09-25,&quot;Berk Geveci&quot; &lt;<a href="berk.geveci@kitware.com">berk.geveci@kitware.com</a>&gt; 写道:<BR>
&gt;&gt;&gt;&gt;&gt;<BR>
&gt;&gt;&gt;&gt;&gt;&gt; To verify whether your graphics driver/card is causing this issue, you<BR>
&gt;&gt;&gt;&gt;&gt;&gt; can compile Mesa (from mesa3d.org) yourself without any hardware<BR>
&gt;&gt;&gt;&gt;&gt;&gt; support and use it as your OpenGL. If you are still having this<BR>
&gt;&gt;&gt;&gt;&gt;&gt; problem, it is not your card.<BR>
&gt;&gt;&gt;&gt;&gt;&gt;<BR>
&gt;&gt;&gt;&gt;&gt;&gt; -berk<BR>
&gt;&gt;&gt;&gt;&gt;&gt;<BR>
&gt;&gt;&gt;&gt;&gt;&gt; 2009/9/25 linzhenhua &lt;<a href="linzhenhua@163.com">linzhenhua@163.com</a>&gt;:<BR>
&gt;&gt;&gt;&gt;&gt;&gt;<BR>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; Hi,All<BR>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;<BR>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; I was bothering by this problem for several days. The legend is very<BR>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; bad.<BR>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;<BR>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; I tried two or three Fedora versions, 10,11,rawhide. For Fedora 11,I<BR>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; have<BR>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; other problem,namely paraview freeze the computer,so I don't notice<BR>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; whether<BR>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; this version also have this problem.<BR>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;<BR>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; For all version I tried, I test both the version coming with the distro<BR>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; and<BR>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; personally compiled version(I have tried both 3.4.0 and 3.6.1)<BR>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;<BR>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; Since I have tried different Fedora version,they should have different<BR>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; versions of graphic driver, I guess this is not the problem. Now I<BR>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; suspect<BR>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; whether this problem is related with the hardware. But I do not have<BR>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; any<BR>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; other problem with the graphic card.<BR>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;<BR>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; Can any one have any idea which is the next possible direction I should<BR>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; try<BR>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; to solve this problem?<BR>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;<BR>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;<BR>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; Best wishes.<BR>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;<BR>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;<BR>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; --<BR>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;<BR>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;<BR>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; ________________________________<BR>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; &quot;中国制造&quot;,讲述中国60年往事<BR>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; _______________________________________________<BR>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; Powered by www.kitware.com<BR>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;<BR>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; Visit other Kitware open-source projects at<BR>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; <a href="http://www.kitware.com/opensource/opensource.html">http://www.kitware.com/opensource/opensource.html</a><BR>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;<BR>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; Please keep messages on-topic and check the ParaView Wiki at:<BR>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; <a href="http://paraview.org/Wiki/ParaView">http://paraview.org/Wiki/ParaView</a><BR>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;<BR>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; Follow this link to subscribe/unsubscribe:<BR>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; <a href="http://www.paraview.org/mailman/listinfo/paraview">http://www.paraview.org/mailman/listinfo/paraview</a><BR>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;<BR>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;<BR>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;<BR>
&gt;&gt;&gt;&gt;&gt; ------------------------------------------------------------------------<BR>
&gt;&gt;&gt;&gt;&gt; &quot;中国制造 &quot;,讲述中国60年往事<BR>
&gt;&gt;&gt;&gt;&gt; &lt;<a href="http://news.163.com/madeinchina/index.html?from=mailfooter">http://news.163.com/madeinchina/index.html?from=mailfooter</a>&gt;<BR>
&gt;&gt;&gt;&gt;&gt; ------------------------------------------------------------------------<BR>
&gt;&gt;&gt;&gt;&gt;<BR>
&gt;&gt;&gt;&gt;&gt; _______________________________________________<BR>
&gt;&gt;&gt;&gt;&gt; Powered by www.kitware.com<BR>
&gt;&gt;&gt;&gt;&gt;<BR>
&gt;&gt;&gt;&gt;&gt; Visit other Kitware open-source projects at<BR>
&gt;&gt;&gt;&gt;&gt; <a href="http://www.kitware.com/opensource/opensource.html">http://www.kitware.com/opensource/opensource.html</a><BR>
&gt;&gt;&gt;&gt;&gt;<BR>
&gt;&gt;&gt;&gt;&gt; Please keep messages on-topic and check the ParaView Wiki at:<BR>
&gt;&gt;&gt;&gt;&gt; <a href="http://paraview.org/Wiki/ParaView">http://paraview.org/Wiki/ParaView</a><BR>
&gt;&gt;&gt;&gt;&gt;<BR>
&gt;&gt;&gt;&gt;&gt; Follow this link to subscribe/unsubscribe:<BR>
&gt;&gt;&gt;&gt;&gt; <a href="http://www.paraview.org/mailman/listinfo/paraview">http://www.paraview.org/mailman/listinfo/paraview</a><BR>
&gt;&gt;&gt;&gt;&gt;<BR>
&gt;&gt;&gt;&gt;&gt;<BR>
&gt;&gt;&gt;&gt;<BR>
&gt;&gt;<BR>
&gt;&gt;<BR>
&gt;<BR>
_______________________________________________<BR>
Powered by www.kitware.com<BR>
<BR>
Visit other Kitware open-source projects at <a href="http://www.kitware.com/opensource/opensource.html">http://www.kitware.com/opensource/opensource.html</a><BR>
<BR>
Please keep messages on-topic and check the ParaView Wiki at: <a href="http://paraview.org/Wiki/ParaView">http://paraview.org/Wiki/ParaView</a><BR>
<BR>
Follow this link to subscribe/unsubscribe:<BR>
<a href="http://www.paraview.org/mailman/listinfo/paraview">http://www.paraview.org/mailman/listinfo/paraview</a><BR>
<BR>
</SPAN></FONT></BLOCKQUOTE><FONT FACE="Calibri, Verdana, Helvetica, Arial"><SPAN STYLE='font-size:11pt'><BR>
</SPAN></FONT><FONT SIZE="2"><FONT FACE="Consolas, Courier New, Courier"><SPAN STYLE='font-size:10pt'><BR>
&nbsp;&nbsp;&nbsp;**** &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Kenneth Moreland<BR>
&nbsp;&nbsp;&nbsp;&nbsp;*** &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Sandia National Laboratories<BR>
*********** &nbsp;<BR>
*** *** *** &nbsp;email: <a href="kmorel@sandia.gov">kmorel@sandia.gov</a><BR>
** &nbsp;*** &nbsp;** &nbsp;phone: (505) 844-8919<BR>
&nbsp;&nbsp;&nbsp;&nbsp;*** &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;web: &nbsp;&nbsp;<a href="http://www.cs.unm.edu/~kmorel">http://www.cs.unm.edu/~kmorel</a><BR>
</SPAN></FONT></FONT><FONT FACE="Calibri, Verdana, Helvetica, Arial"><SPAN STYLE='font-size:11pt'><BR>
</SPAN></FONT>
</BODY>
</HTML>