Reading this thread gave me the idea that maybe a good feature for an upcoming
release might be the addition of something like folders to the object/selection
bar on the right, this way objects and selections could be grouped and affected
all at once. I think this would be extremely useful for making figures where
you often have multiple objects and selections all converging to illustrate one
point. Plus it would help to reduce the clutter you build up if you could open
and close the folder to show or hide its contents in the resource bar.
-Tzuni
-----Original Message-----
From: [email protected] on behalf of Michael
George Lerner
Sent: Tue 3/8/2005 10:42 AM
To: Robert Campbell
Cc: [email protected]
Subject: Re: [PyMOL] combine distance objects
On Tue, 8 Mar 2005, Robert Campbell wrote:
> Hi,
>
>> Daniel Farrell [Monday, March 07, 2005 1:23 PM] wrote:
>>>
>>> I want to create a lot of distance objects (in the hundreds)
>>> between particular atomic pairs. Obviously I can make a
>>> script like the following, inserting the exact atomic
>>> selections that I want:
>>>
>>> distance distobj12 = (atom1), (atom2)
>>> distance distobj34 = (atom3), (atom4)
>>> ... etc.
>>>
> But in fact one *can* still turn them on and off, with the "enable" or
> "disable" command on the command line:
>
> enable _dist1
> disable _dist1
>
> And it would be straightforward to put those commands within a loop:
>
> # turn them all off:
> for i in range(100):
> cmd.disable("_dist1%s" % i)
>
> # turn them all on:
> for i in range(100):
> cmd.enable("_dist1%s" % i)
>
> Change "100" to whatever is appropriate.
I was just about to write something like this. In fact, I have tons of
files called something like x.py sprinkled around that do things like
-----------------------------------------
from pymol import cmd
num_dist = 100
def show_dist():
""" show all of my distance objects """
for i in range(num_dist):
cmd.enable('_dist%s'%i)
def hide_dist():
""" hide all of my distance objects """
for i in range(num_dist):
cmd.disable('_dist%s'%i)
cmd.extend('sd',show_dist)
cmd.extend('hd',hide_dist)
-----------------------------------------
You could also try something cute like
def show_dist():
dists = [name for name in cmd.get_names() if cmd.get_type(name) ==
'object:distance']
for name in dists: cmd.enable(name)
etc.
if you don't want to have to keep track of how many there are.
-michael
--
www.umich.edu/~mlerner | _ |Michael Lerner
This isn't a democracy;| ASCII ribbon campaign ( ) | Michigan
it's a cheer-ocracy. | - against HTML email X | Biophysics
-Torrence, Bring It On| / \ | mler...@umich
> Cheers,
> Rob
> --
> Robert L. Campbell, Ph.D.
<[email protected]>
> Senior Research Associate phone:
613-533-6821
> Dept. of Biochemistry, Queen's University, fax:
613-533-2497
> Kingston, ON K7L 3N6 Canada
http://adelie.biochem.queensu.ca/~rlc
> PGP Fingerprint: 9B49 3D3F A489 05DC B35C 8E33 F238 A8F5 F635 C0E2
>
>
> -------------------------------------------------------
> SF email is sponsored by - The IT Product Guide
> Read honest & candid reviews on hundreds of IT Products from real
users.
> Discover which products truly live up to the hype. Start reading now.
> http://ads.osdn.com/?ad_id=6595&alloc_id=14396&op=click
> _______________________________________________
> PyMOL-users mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/pymol-users
>
>
>
-------------------------------------------------------
SF email is sponsored by - The IT Product Guide
Read honest & candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now.
http://ads.osdn.com/?ad_id=6595&alloc_id=14396&op=click
_______________________________________________
PyMOL-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/pymol-users