GetNamesInSel

From PyMOLWiki
Revision as of 14:36, 23 March 2009 by Inchoate (talk | contribs)
Jump to navigation Jump to search

Overview

This script returns the list of object names that exist in any given selection. For example, if you have 100 objects loaded (viz. ligand poses from small molecule docking) and select all atoms w/in some cutoff, then you have a selection. What objects are actually in that selection? This script will tell you.

The Code

from pymol import cmd, stored
def getNamesInSel(sel, sorted=False, reversed=False):
    stored.tempNames = set()
    cmd.iterate_state(1, sel, "stored.tempNames.add(model)")
    rList = list(stored.tempNames)

    # if you want the list reversed or sorted,
    # uncomment the following lines
    if sorted:
        rList.sort()
    if reversed:
        rList.reverse()

    return rList

cmd.extend("getNamesInSel", getNamesInSel)

See Also