Bernhards key bindings for coot.py: Difference between revisions
Jump to navigation
Jump to search
Bernhardcl (talk | contribs) No edit summary |
Bernhardcl (talk | contribs) No edit summary |
||
Line 86: | Line 86: | ||
add_status_bar_text("Rotamer name: " + name) | add_status_bar_text("Rotamer name: " + name) | ||
add_key_binding("Rotamer name in Status Bar", "~", lambda: key_binding_func_5()) | add_key_binding("Rotamer name in Status Bar", "~", lambda: key_binding_func_5()) | ||
def key_binding_func_6(): | |||
from types import ListType | |||
active_atom = active_residue() | |||
if (not active_atom): | |||
add_status_bar_text("No active residue") | |||
else: | |||
imol = active_atom[0] | |||
chain_id = active_atom[1] | |||
res_no = active_atom[2] | |||
ins_code = active_atom[3] | |||
atom_name = active_atom[4] | |||
alt_conf = active_atom[5] | |||
centred_residue = active_atom[1:4] | |||
other_residues = residues_near_residue(imol, centred_residue, 3) | |||
all_residues = [centred_residue] | |||
if (type(other_residues) is ListType): | |||
all_residues += other_residues | |||
print "imol: %s residues: %s" %(imol, all_residues) | |||
refine_residues(imol, all_residues) | |||
add_key_binding("Refine residues in a sphere", "R", lambda: key_binding_func_6()) | |||
</pre> | </pre> |
Revision as of 17:56, 14 January 2009
add_key_binding("Refine Active Residue", "r", lambda: manual_refine_residues(0)) add_key_binding("Refine Active Residue AA", "x", lambda: refine_active_residue()) add_key_binding("Triple Refine", "t", lambda: manual_refine_residues(1)) add_key_binding("Triple Refine AA", "h", lambda: refine_active_residue_triple()) add_key_binding("Autofit Rotamer", "j", lambda: auto_fit_rotamer_active_residue()) add_key_binding("Pepflip", "q", lambda: pepflip_active_residue()) add_key_binding("Got To Blob", "g", lambda: blob_under_pointer_to_screen_centre()) add_key_binding("Add Water", "w", lambda: place_typed_atom_at_pointer("Water")) add_key_binding("Eigen-flip Ligand", "e", lambda: flip_active_ligand()) def key_binding_func_1(): active_atom = active_residue() if (not active_atom): print "No active atom" else: imol = active_atom[0] chain_id = active_atom[1] res_no = active_atom[2] ins_code = active_atom[3] atom_name = active_atom[4] alt_conf = active_atom[5] add_terminal_residue(imol, chain_id, res_no, "auto", 1) add_key_binding("Add terminal residue", "y", lambda: key_binding_func_1()) def key_binding_func_2(): active_atom = active_residue() if (not active_atom): print "No active atom" else: imol = active_atom[0] chain_id = active_atom[1] res_no = active_atom[2] ins_code = active_atom[3] atom_name = active_atom[4] alt_conf = active_atom[5] fill_partial_residue(imol, chain_id, res_no, ins_code) add_key_binding("Fill Partial", "k", lambda: key_binding_func_2()) def key_binding_func_3(): if (os.name == 'nt'): home = os.getenv('COOT_HOME') else: home = os.getenv('HOME') dir_1 = os.path.join(home, "data", "rnase") read_pdb(os.path.join(dir_1, "tutorial-modern.pdb")) make_and_draw_map(os.path.join(dir_1, "rnasa-1.8-all_refmac1.mtz"), "/RNASE3GMP/COMPLEX/FWT", "/RNASE3GMP/COMPLEX/PHWT", "", 0, 0) add_key_binding("Load RNAs files", "F9", lambda: key_binding_func_3()) def key_binding_func_4(): keyboard_ghosts_mol = -1 for mol in model_molecule_list(): if (ncs_ghosts(mol)): keyboard_ghosts_mol = mol break if (draw_ncs_ghosts_state(keyboard_ghosts_mol) == 0): make_ncs_ghosts_maybe(keyboard_ghosts_mol) set_draw_ncs_ghosts(keyboard_ghosts_mol, 1) else: set_draw_ncs_ghosts(keyboard_ghosts_mol, 0) add_key_binding("Toggle Ghosts", ":", lambda: key_binding_func_4()) add_key_binding("Hydrogens off", "(", lambda: set_draw_hydrogens(0, 0)) add_key_binding("Hydrogens on", ")", lambda: set_draw_hydrogens(0, 1)) def key_binding_func_5(): active_atom = active_residue() if (not active_atom): add_status_bar_text("No active residue") else: imol = active_atom[0] chain_id = active_atom[1] res_no = active_atom[2] ins_code = active_atom[3] atom_name = active_atom[4] alt_conf = active_atom[5] name = get_rotamer_name(imol, chain_id, res_no, ins_code) if (not name): add_status_bar_text("No Name found") else: if (name == ""): add_status_bar_text("No name for this") else: add_status_bar_text("Rotamer name: " + name) add_key_binding("Rotamer name in Status Bar", "~", lambda: key_binding_func_5()) def key_binding_func_6(): from types import ListType active_atom = active_residue() if (not active_atom): add_status_bar_text("No active residue") else: imol = active_atom[0] chain_id = active_atom[1] res_no = active_atom[2] ins_code = active_atom[3] atom_name = active_atom[4] alt_conf = active_atom[5] centred_residue = active_atom[1:4] other_residues = residues_near_residue(imol, centred_residue, 3) all_residues = [centred_residue] if (type(other_residues) is ListType): all_residues += other_residues print "imol: %s residues: %s" %(imol, all_residues) refine_residues(imol, all_residues) add_key_binding("Refine residues in a sphere", "R", lambda: key_binding_func_6())