> 2) filelist:
>

<snip>

> get a kind of temporary script which would be run on each file in the list
> when you opened it. A kind of frozen view (or a curried one?).
>
> Maybe I should just make it. Then I wouldn't have to explain the idea.

Ok, I was confused on what you meant before.  I've been in similar
situations, if you are going to try something like this you might want to
take a look at the script I use (attached on the off chance you don't have
something similar).  It'll probably need some customization, seeing as I
use it for checking search results quickly (and don't deal w\ any gui
stuff).


> 4) sec struc elem:

I'm two for two on misunderstanding you today apparently...Thanks for
clearing it up.

Pete


Pete Meyer
Fu Lab
BMCB grad student
Cornell University
from pymol import cmd

class ModelHolder:
    #loop over pdb files named base_##.pdb (from ##=0 to 99)
    #to use: run ModelHolder.py ; m=ModelHolder('base')
    def __init__(self,base):
        self.base=base
        self.pos=0
        self.show()
    def makefname(self):
        fname=self.name()+'.pdb'
        return fname
    def name(self):
        name=self.base+'_'+str(self.pos)
        return name
    def clear(self):
        name=self.name()
        cmd.delete(name)
    def show(self):
        n=self.name()
        cmd.load(self.makefname(),n)
        cmd.hide('everything',n)
        cmd.show('ribbon',n)
        #color red for even or cyan for odd pos
        if self.pos%2==0: cmd.color('red',n)
        else: cmd.color('cyan',n)
    def next(self):
        self.clear()
        self.pos=self.pos+1
        if self.pos>99:
            self.pos=0
            cmd.bg_color('grey80')
        self.show()
    def last(self):
        self.clear()
        self.pos=self.pos-1
        if self.pos<0: 
            self.pos=99
            cmd.bg_color('grey80')
        self.show()
    def go(self,n):
        pos=self.pos
        self.clear()
        if (n>=0) and ( n<=99):
            self.pos=n
            self.show()
        else:
            self.show()

Reply via email to