This is a read-only mirror of pymolwiki.org
Difference between revisions of "Split chains"
Jump to navigation
Jump to search
(Created page with "'''split_chains''' is a script that creates for each chain in selection its own object. == Usage == split_chains [ selection [, prefix ]] == Example == <source lang="python"...") |
(Infobox psico) |
||
Line 1: | Line 1: | ||
+ | {{Infobox psico | ||
+ | |module = psico.editing | ||
+ | }} | ||
+ | |||
'''split_chains''' is a script that creates for each chain in selection its own object. | '''split_chains''' is a script that creates for each chain in selection its own object. | ||
Revision as of 07:58, 31 July 2012
Included in psico | |
Module | psico.editing |
---|
split_chains is a script that creates for each chain in selection its own object.
Usage
split_chains [ selection [, prefix ]]
Example
fetch 2yko 2ykp 2ykq, async=0
split_chains
delete 2yko 2ykp 2ykq
alignto 2yko_A
The Script
from pymol import cmd, CmdException
def split_chains(selection='(all)', prefix=None):
'''
DESCRIPTION
Create a single object for each chain in selection
SEE ALSO
split_states, http://pymolwiki.org/index.php/Split_object
'''
count = 0
models = cmd.get_object_list('(' + selection + ')')
for model in models:
for chain in cmd.get_chains('(%s) and model %s' % (selection, model)):
count += 1
if not prefix:
name = '%s_%s' % (model, chain)
else:
name = '%s%04d' % (prefix, count)
cmd.create(name, '(%s) and model %s and chain %s' % (selection, model, chain))
cmd.disable(model)
cmd.extend('split_chains', split_chains)