<html><head><meta http-equiv="Content-Type" content="text/html charset=windows-1252"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; ">Hi Martin,<div><br></div><div> Thanks for the script. This is something others have requested. So I added it to Chimera today, in tonight's daily builds. </div><div><br></div><div><span class="Apple-tab-span" style="white-space:pre"> </span>volume #0 encloseVolume 150000<br><br>Uses bisection of the density value until the enclosed volume differs from the target volume by less than 1e-5 of the target volume. Uses at most 30 bisection steps. Can set the level for multiple maps at once</div><div><div><br></div><div><span class="Apple-tab-span" style="white-space: pre; "> </span>volume #0-5 encl 250000</div></div><div><br></div><div>Can specify multiple volume values to get multiple surfaces, for example<br><br><span class="Apple-tab-span" style="white-space:pre"> </span>volume #0 enclose 150000,300000</div><div><br></div><div>The enclosed volume is in cubic Angstroms if your map grid spacing is in Angstroms. You can report the current enclosed volume with the "measure volume" command</div><div><br></div><div><span class="Apple-tab-span" style="white-space:pre"> </span>measure volume #0</div><div><br></div><div>Thanks for figuring out code to do this. I used a slight variation of what you did.</div><div><br></div><div> Tom</div><div><br></div><div><br></div><div><br></div><div><div><div>On Nov 23, 2013, at 8:41 AM, Martin Turk wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite">
<meta content="text/html; charset=windows-1252" http-equiv="Content-Type">
<div bgcolor="#FFFFFF" text="#000000">
<div class="moz-cite-prefix">Hi,<br>
<br>
added another step for fine tunning and reduced number of steps,
now it works much faster. Maybe there is a better way of doing the
threshold steps. I overshoot up, down then up again, but it works
:)<br>
<br>
Best,<br>
Martin<br>
<br>
<br>
<br>
On 23.11.2013 16:29, Martin Turk wrote:<br>
</div>
<blockquote cite="mid:5290C9D0.8030009@lmb.uni-muenchen.de" type="cite">
<meta content="text/html; charset=windows-1252" http-equiv="Content-Type">
<div class="moz-cite-prefix">Hi Shawn, Tom, Eric,<br>
<br>
thanks a lot for the help and for pointing me in the right
direction. Finally I had some time and I've come up with a
script that adjusts the volume level threshold from the active
model to all opened models. For one model it's not a problem,
but when one wants to adjust the levels for a series of volumes
(for example after a 3d classification run in relion), it
becomes cumbersome to do so for the ~50 models/run. Maybe other
EM users find it handy, that's why I'd like to share it.<br>
It took me quite some time to find the right functions, which do
the actual measurement. Got lost in the OpenModels.h, volume.py,
volumedialog.py, and the gui scripts. The rest was easy :-)
Thanks again for your help!<br>
<br>
Best,<br>
Martin Turk<br>
<br>
Beckmann Lab<br>
LMU Gence Center Munich<br>
<br>
<br>
On 18.11.2013 20:49, Eric Pettersen wrote:<br>
</div>
<blockquote cite="mid:AC3293D4-296E-4649-AF7C-DD6DD40F862E@cgl.ucsf.edu" type="cite">
<meta http-equiv="Content-Type" content="text/html;
charset=windows-1252">
To supplement Shawn and Tom's answers, obviously it would be
best if everything were documented, but in the absence of that
if there is a command that implements something similar to what
you want to do, you can chase it down in the code base by:
<div><br>
</div>
<div><span class="Apple-tab-span" style="white-space:pre"> </span>a)
looking at Midas/__init__.py and see if it's one of the
functions in there (they're arranged approximately
alphabetically by command name), and if it's not in there…</div>
<div><span class="Apple-tab-span" style="white-space:pre"> </span>b)
grep share/*/ChimeraExtension.py for the command name to find
which module defines the command. Then look in that module's
ChimeraExtension.py to see what file/method in the module
implements the command.</div>
<div><br>
</div>
<div>--Eric</div>
<div><br>
</div>
<div><span class="Apple-tab-span" style="white-space:pre"> </span>Eric
Pettersen</div>
<div><span class="Apple-tab-span" style="white-space:pre"> </span>UCSF
Computer Graphics Lab</div>
<div><br>
<div>
<div>On Nov 18, 2013, at 9:06 AM, Shawn Waldon <<a moz-do-not-send="true" href="mailto:swaldon@cs.unc.edu">swaldon@cs.unc.edu</a>>
wrote:</div>
<br class="Apple-interchange-newline">
<blockquote type="cite">
<div dir="ltr">Hi Martin,
<div><br>
</div>
<div>I am not aware that there is a python library
reference. If there is, I would appreciate a pointer
to it as well. Here are a few links I have found
helpful when writing python code for Chimera:</div>
<div><br>
</div>
This shows how to execute command line commands, it may
be what you want:<br class="">
<a moz-do-not-send="true" href="http://www.cgl.ucsf.edu/chimera/data/downloads/1.8/docs/ProgrammersGuide/basicPrimer.html">http://www.cgl.ucsf.edu/chimera/data/downloads/1.8/docs/ProgrammersGuide/basicPrimer.html</a>
<div> <br>
</div>
<div>This goes through how to make plugins and such, but
is helpful since the examples show more of the API:<br>
<div><a moz-do-not-send="true" href="http://www.cgl.ucsf.edu/chimera/docs/ProgrammersGuide/Examples/index.html">http://www.cgl.ucsf.edu/chimera/docs/ProgrammersGuide/Examples/index.html</a></div>
</div>
<div><br>
</div>
<div>HTH,</div>
<div>Shawn Waldon</div>
</div>
<div class="gmail_extra"><br>
<br>
<div class="gmail_quote">On Mon, Nov 18, 2013 at 9:10
AM, Martin Turk <span dir="ltr"><<a moz-do-not-send="true" href="mailto:turk@lmb.uni-muenchen.de" target="_blank">turk@lmb.uni-muenchen.de</a>></span>
wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0
.8ex;border-left:1px #ccc solid;padding-left:1ex">Hi,<br>
<br>
I am trying to write a simple python script that
will iterate over opened volumes and adjust the
contour level to a certain mass. This shouldn't be
more than ~10 lines. However, I can't find chimera's
python library reference to look up the class
structure and operator names.<br>
<br>
Does someone know how, for example, set volume level
to 0.01 would look like in python?<br>
in the command line it would be for all models:
volume #0-99 level 0.01<br>
<br>
for models I've found chimera.openModels and then
you can list over them, but that's about it.<br>
<br>
Thanks,<br>
Martin Turk<br>
_______________________________________________<br>
Chimera-dev mailing list<br>
<a moz-do-not-send="true" href="mailto:Chimera-dev@cgl.ucsf.edu" target="_blank">Chimera-dev@cgl.ucsf.edu</a><br>
<a moz-do-not-send="true" href="http://www.rbvi.ucsf.edu/mailman/listinfo/chimera-dev" target="_blank">http://www.rbvi.ucsf.edu/mailman/listinfo/chimera-dev</a><br>
</blockquote>
</div>
<br>
<br clear="all">
<div><br>
</div>
-- <br>
<div dir="ltr">Shawn Waldon
<div>Graduate Research Assistant</div>
<div>Department of Computer Science</div>
<div>University of North Carolina at Chapel Hill</div>
<div><a moz-do-not-send="true" href="mailto:swaldon@cs.unc.edu" target="_blank">swaldon@cs.unc.edu</a></div>
</div>
</div>
_______________________________________________<br>
Chimera-dev mailing list<br>
<a moz-do-not-send="true" href="mailto:Chimera-dev@cgl.ucsf.edu">Chimera-dev@cgl.ucsf.edu</a><br>
<a moz-do-not-send="true" class="moz-txt-link-freetext" href="http://www.rbvi.ucsf.edu/mailman/listinfo/chimera-dev">http://www.rbvi.ucsf.edu/mailman/listinfo/chimera-dev</a><br>
</blockquote>
</div>
<br>
</div>
</blockquote>
<br>
</blockquote>
<br>
</div>
<span><chimera-volbymass3.py></span></blockquote></div><br></div></body></html>