
Hi Wally, Wow, I'm impressed!! It takes a brave person to mess around with Chimera code. 8-) Thanks for sharing your solution, which many others may find useful until we provide an interface for opening local CASTp results. Best, Elaine On Jul 24, 2008, at 11:22 AM, Walter Novak wrote:
Hi Elaine, I found a quick and easy workaround, but it involves editing the CASTp gui.py file and making a couple changes to the processCastpID function. Don't worry I duplicated this file first! I simply change basURL to include the directory and the root filename of my castp files, commented out the import (which is unnecessary), and altered the try statement to only attach the suffix to the name. Then I can use the fetch command and give it any bogus name to look for, like test, and it opens the files with the wonderful CASTp gui interface so I can select the channels. I have to change the baseURL for each new structure as I wasn't sure where it gets the castpID from, but that isn't so bad. Best, Wally
def processCastpID(castpID): castpID = castpID.strip() if len(castpID) > 4: dir = "sccast" else: dir = "cast" castpID = castpID[:4].lower() + castpID[4:] baseUrl = "/Users/wnovak/Documents/NHpaper/ppNHase-het2-castp/ JIDF34763I670"
#from urllib2 import urlopen try: pdb = baseUrl + ".pdb" mouthAtoms = baseUrl + ".mouth" mouthInfo = baseUrl + ".mouthInfo" pocketAtoms = baseUrl + ".poc" pocketInfo = baseUrl + ".pocInfo" except: raise UserError("ID %s not in CASTp database" % castpID)
from CASTp import processCastpFiles structure, cavities = processCastpFiles(pdb, mouthAtoms, mouthInfo, pocketAtoms, pocketInfo, identifyAs=castpID) CastpDialog(castpID, cavities) return [structure]
Walter R.P. Novak, Ph.D. Postdoctoral Fellow Rosenstiel Basic Medical Research Center Brandeis University 415 South St. MS 029 Waltham, MA 02454-9110 Phone: (781) 736-4944 Fax: (781) 736-2405