<div>+1  Looks good!</div><div><br>From</div><div>G.S.<br><br></div><div class="gmail_quote">On Fri, Jun 8, 2012 at 2:59 PM, Matthew Turk <span dir="ltr"><<a href="mailto:matthewturk@gmail.com" target="_blank">matthewturk@gmail.com</a>></span> wrote:<br>
<blockquote style="margin:0px 0px 0px 0.8ex;padding-left:1ex;border-left-color:rgb(204,204,204);border-left-width:1px;border-left-style:solid" class="gmail_quote">Hi Sam,<br>
<div class="im"><br>
On Fri, Jun 8, 2012 at 5:30 PM, Sam Skillman <<a href="mailto:samskillman@gmail.com">samskillman@gmail.com</a>> wrote:<br>
> Matt:<br>
><br>
> I'm using pylab.  One thing I'm going to change is modify it so that it gets<br>
> the resolution of the image, then sets the pylab figure size based off that.<br>
>  I'd also rather have this go through freetype, but the development time for<br>
> that for me is >> (time left this afternoon).  I'd be +1 to porting to<br>
> freetype.<br>
<br>
</div>Okay, let's put that on the agenda but not pre-PR/merge.  I seem to<br>
recall that freetype was put in originally so we *could* do colorbars<br>
like this, so it would be nice to deliver on that.  The ticking code<br>
we use from matplotlib can be used here; right now it's put to use<br>
making colorbars in the browser (out of DIV elements, I think) in<br>
Reason.  I'd be happy to work through this with you so we could get it<br>
going at some point down the road.  For now, pylab it is!<br>
<div class="im"><br>
><br>
> This is _very_ loosely coupled to the interactive camera.  I'm going to<br>
> (right now) move it over to the general camera class, and make it have the<br>
> API:<br>
><br>
> cam.save_annotated(fn, im=None, enhance=True)<br>
><br>
> This will take the filename, the previously produced image array or try to<br>
> get the cam.image array (which exists for some variants of the camera), and<br>
> then apply the standard deviation clipping that is presence in the<br>
> enhance.py on the hub.  I'm going to strongly encourage the enhance=True.<br>
>  I've been making movies that use the same normalization and have been happy<br>
> with all of them.<br>
><br>
> While I'm at it, I'll add a cam.save(fn, im, enhance=True) that skips the<br>
> annotation.<br>
><br>
> +/- 1 on those additions?  Requests?<br>
<br>
</div>+1.<br>
<br>
Maybe this is inspiring enough to get that VR widget in Reason going ... :-)<br>
<br>
-Matt<br>
<div class="HOEnZb"><div class="h5"><br>
><br>
> All others: Thanks for the enthusiastic response!<br>
><br>
> Sam<br>
><br>
> On Fri, Jun 8, 2012 at 3:28 PM, Christopher Moody <<a href="mailto:cemoody@ucsc.edu">cemoody@ucsc.edu</a>> wrote:<br>
>><br>
>> Beautiful, +1!<br>
>><br>
>> chris<br>
>><br>
>> On Fri, Jun 8, 2012 at 2:22 PM, Cameron Hummels<br>
>> <<a href="mailto:chummels@astro.columbia.edu">chummels@astro.columbia.edu</a>> wrote:<br>
>> > +1e6!  I need to use something like this right now! :)  Great work, Sam!<br>
>> ><br>
>> ><br>
>> > On 6/8/12 5:06 PM, Sam Skillman wrote:<br>
>> >><br>
>> >> Okay, I've prototyped something that works like this:<br>
>> >><br>
>> >> interactive_camera.snapshot()<br>
>> >> ...pops up interactive matplotlib window...<br>
>> >> interactive_camera.save('test.png')<br>
>> >> ...grabs all needed information and makes this...<br>
>> >><br>
>> >> Inline image 1<br>
>> >><br>
>> >> +/- 1?  It just needs some cleanup, like reducing the extent of the<br>
>> >> colorbar so you don't get the black strip at the top and bottom of the<br>
>> >> image.<br>
>> >><br>
>> >> Sam<br>
>> >><br>
>> >> On Fri, Jun 8, 2012 at 2:12 PM, Richard P Wagner <<a href="mailto:rpwagner@sdsc.edu">rpwagner@sdsc.edu</a><br>
>> >> <mailto:<a href="mailto:rpwagner@sdsc.edu">rpwagner@sdsc.edu</a>>> wrote:<br>
>> >><br>
>> >><br>
>> >>    On Jun 8, 2012, at 12:40 PM, Nathan Goldbaum wrote:<br>
>> >><br>
>> >>>    I'd prefer it if the transfer function plot were split into two<br>
>> >>>    separate frames.  Right now, it's easy to think that the black<br>
>> >>>    background color image contains opacity information since the<br>
>> >>>    frame is plotted with a y axis.  I'd prefer it if only the white<br>
>> >>>    line was plotted with a y axis and the black background image was<br>
>> >>>    plotted in a separate frame like a color bar with no y axis.<br>
>> >>>     This would also let the user see the tick marks for the opacity<br>
>> >>>    plot much more easily.<br>
>> >>><br>
>> >>>    In general, I like plotting the transfer function like a color<br>
>> >>>    bar (sort of like Stella Offner's image on the yt homepage<br>
>> >>>    [<a href="http://yt-project.org/img/offner_etal.png]" target="_blank">http://yt-project.org/img/offner_etal.png]</a>).<br>
>> >><br>
>> >><br>
>> >>    That's what came to mind when I was reading this. For a while,<br>
>> >>    we've been putting a combination color bar-transfer function<br>
>> >>    graphic in our renderings with ANL (skip about 30 seconds into<br>
>> >>    <a href="http://www.youtube.com/watch?v=5dOt0IaRY4U" target="_blank">http://www.youtube.com/watch?v=5dOt0IaRY4U</a>). I think it's very<br>
>> >>    natural to overlay a transfer function plot onto a color bar, and<br>
>> >>    it provides a lot of information in a simple fashion.<br>
>> >><br>
>> >>    --Rick<br>
>> >><br>
>> >>><br>
>> >>>    Nathan Goldbaum<br>
>> >>>    Graduate Student<br>
>> >>>    Astronomy & Astrophysics, UCSC<br>
>> >>>    <a href="mailto:goldbaum@ucolick.org">goldbaum@ucolick.org</a> <mailto:<a href="mailto:goldbaum@ucolick.org">goldbaum@ucolick.org</a>><br>
>> >>>    <a href="http://www.ucolick.org/~goldbaum" target="_blank">http://www.ucolick.org/~goldbaum</a><br>
>> >>> <<a href="http://www.ucolick.org/%7Egoldbaum" target="_blank">http://www.ucolick.org/%7Egoldbaum</a>><br>
>> >>><br>
>> >>><br>
>> >>>    On Jun 8, 2012, at 12:34 PM, Sam Skillman wrote:<br>
>> >>><br>
>> >>>>    Hi all,<br>
>> >>>><br>
>> >>>>    I've been experimenting with different ways to plot the transfer<br>
>> >>>>    functions, and in particular in the context of the<br>
>> >>>>    InteractiveCamera.<br>
>> >>>><br>
>> >>>>    What are people's thoughts about this behavior:<br>
>> >>>><br>
>> >>>>    <a href="http://i.imgur.com/CGZ7Z.png" target="_blank">http://i.imgur.com/CGZ7Z.png</a><br>
>> >>>>    <a href="http://i.imgur.com/OCsVt.jpg" target="_blank">http://i.imgur.com/OCsVt.jpg</a><br>
>> >>>>    <a href="http://i.imgur.com/VNEse.png" target="_blank">http://i.imgur.com/VNEse.png</a><br>
>> >>>><br>
>> >>>>    btw, you can get this behavior by changing your script to call<br>
>> >>>>    pf.h.interactive_camera, and then running in ipython with a<br>
>> >>>>    working matplotlib backend.<br>
>> >>>><br>
>> >>>>    I'll let Nathan bring up his concerns rather than me try to<br>
>> >>>>    convey them.<br>
>> >>>><br>
>> >>>>    Sam<br>
>> >>>><br>
>> >>>><br>
>> >>>><br>
>> >>>>    !DSPAM:10175,4fd253db101042955315835!<br>
>> >>>>    _______________________________________________<br>
>> >>>>    yt-dev mailing list<br>
>> >>>>    <a href="mailto:yt-dev@lists.spacepope.org">yt-dev@lists.spacepope.org</a> <mailto:<a href="mailto:yt-dev@lists.spacepope.org">yt-dev@lists.spacepope.org</a>><br>
>> >>>>    <a href="http://lists.spacepope.org/listinfo.cgi/yt-dev-spacepope.org" target="_blank">http://lists.spacepope.org/listinfo.cgi/yt-dev-spacepope.org</a><br>
>> >>>><br>
>> >>>><br>
>> >>>>    !DSPAM:10175,4fd253db101042955315835!<br>
>> >>><br>
>> >>><br>
>> >>>    _______________________________________________<br>
>> >>>    yt-dev mailing list<br>
>> >>>    <a href="mailto:yt-dev@lists.spacepope.org">yt-dev@lists.spacepope.org</a> <mailto:<a href="mailto:yt-dev@lists.spacepope.org">yt-dev@lists.spacepope.org</a>><br>
>> >>>    <a href="http://lists.spacepope.org/listinfo.cgi/yt-dev-spacepope.org" target="_blank">http://lists.spacepope.org/listinfo.cgi/yt-dev-spacepope.org</a><br>
>> >><br>
>> >><br>
>> >><br>
>> >>    _______________________________________________<br>
>> >>    yt-dev mailing list<br>
>> >>    <a href="mailto:yt-dev@lists.spacepope.org">yt-dev@lists.spacepope.org</a> <mailto:<a href="mailto:yt-dev@lists.spacepope.org">yt-dev@lists.spacepope.org</a>><br>
>> >><br>
>> >>    <a href="http://lists.spacepope.org/listinfo.cgi/yt-dev-spacepope.org" target="_blank">http://lists.spacepope.org/listinfo.cgi/yt-dev-spacepope.org</a><br>
>> >><br>
>> >><br>
>> >><br>
>> >><br>
>> >> _______________________________________________<br>
>> >> yt-dev mailing list<br>
>> >> <a href="mailto:yt-dev@lists.spacepope.org">yt-dev@lists.spacepope.org</a><br>
>> >> <a href="http://lists.spacepope.org/listinfo.cgi/yt-dev-spacepope.org" target="_blank">http://lists.spacepope.org/listinfo.cgi/yt-dev-spacepope.org</a><br>
>> ><br>
>> > _______________________________________________<br>
>> > yt-dev mailing list<br>
>> > <a href="mailto:yt-dev@lists.spacepope.org">yt-dev@lists.spacepope.org</a><br>
>> > <a href="http://lists.spacepope.org/listinfo.cgi/yt-dev-spacepope.org" target="_blank">http://lists.spacepope.org/listinfo.cgi/yt-dev-spacepope.org</a><br>
>> _______________________________________________<br>
>> yt-dev mailing list<br>
>> <a href="mailto:yt-dev@lists.spacepope.org">yt-dev@lists.spacepope.org</a><br>
>> <a href="http://lists.spacepope.org/listinfo.cgi/yt-dev-spacepope.org" target="_blank">http://lists.spacepope.org/listinfo.cgi/yt-dev-spacepope.org</a><br>
><br>
><br>
><br>
> _______________________________________________<br>
> yt-dev mailing list<br>
> <a href="mailto:yt-dev@lists.spacepope.org">yt-dev@lists.spacepope.org</a><br>
> <a href="http://lists.spacepope.org/listinfo.cgi/yt-dev-spacepope.org" target="_blank">http://lists.spacepope.org/listinfo.cgi/yt-dev-spacepope.org</a><br>
><br>
_______________________________________________<br>
yt-dev mailing list<br>
<a href="mailto:yt-dev@lists.spacepope.org">yt-dev@lists.spacepope.org</a><br>
<a href="http://lists.spacepope.org/listinfo.cgi/yt-dev-spacepope.org" target="_blank">http://lists.spacepope.org/listinfo.cgi/yt-dev-spacepope.org</a><br>
</div></div></blockquote></div><br>