Warren-

I never even noticed the -l option.  That's awesome!

Thanks,

-michael

--
www.umich.edu/~mlerner |                        _  |Michael Lerner
This isn't a democracy;| ASCII ribbon campaign ( ) |   Michigan
it's a cheer-ocracy.   |  - against HTML email  X  |  Biophysics
-Torrence,  Bring It On|                       / \ | mler...@umich

On Fri, 6 Jan 2006, Warren DeLano wrote:


NOTE: Bug fix for receive.py

# BEGIN receive.py

from pymol import cmd
from time import sleep
import os

filename = "view.txt"

while not sleep(0.2):
   if os.path.exists(filename):
       try:
           cmd.set_view(eval(open(filename,'r').read()))
           os.unlink(filename)
       except: # if the file isn't yet complete
           pass

# END receive.py


Cheers,
Warren

--
Warren L. DeLano, Ph.D.
Principal Scientist

. DeLano Scientific LLC
. 400 Oyster Point Blvd., Suite 213
. South San Francisco, CA 94080 USA
. Biz:(650)-872-0942  Tech:(650)-872-0834
. Fax:(650)-872-0273  Cell:(650)-346-1154
. mailto:war...@delsci.com


-----Original Message-----
From: Warren DeLano
Sent: Friday, January 06, 2006 2:54 PM
To: 'Michael George Lerner'; pymol-users@lists.sourceforge.net
Subject: RE: [PyMOL] Can I use the mouse to control multiple windows?

Michael,

Of course -- use ansynchrous Python threads to automate the
process.  For example:

pymol test.pdb -l send.py &
pymol test.pdb -l receive.py

with the scripts below.  Note use of the lowercase "L" option
to launch PyMOL Python scripts in their own asynchronous thread.

Cheers,
Warren

# BEGIN send.py

from pymol import cmd
from time import sleep
import os

last_view = cmd.get_view()

filename = "view.txt"

while not sleep(0.2):
    cur_view = cmd.get_view()
    if last_view != cur_view:
        if not os.path.exists(filename):
            open(filename,'w').write(str(cur_view))
            last_view = cur_view

# END send.py

# BEGIN receive.py

from pymol import cmd
from time import sleep
import os

filename = "view.txt"

while not sleep(0.2):
    if os.path.exists(filename):
        try:
            cmd.set_view(eval(open(filename,'r').read()))
            os.unlink(filename)
        except: # if the file isn't yet complete
            pass

# END receive.py


Cheers,
Warren


--
Warren L. DeLano, Ph.D.
Principal Scientist

. DeLano Scientific LLC
. 400 Oyster Point Blvd., Suite 213
. South San Francisco, CA 94080 USA
. Biz:(650)-872-0942  Tech:(650)-872-0834
. Fax:(650)-872-0273  Cell:(650)-346-1154
. mailto:war...@delsci.com


-----Original Message-----
From: pymol-users-ad...@lists.sourceforge.net
[mailto:pymol-users-ad...@lists.sourceforge.net] On Behalf
Of Michael
George Lerner
Sent: Friday, January 06, 2006 1:56 PM
To: pymol-users@lists.sourceforge.net
Subject: [PyMOL] Can I use the mouse to control multiple windows?


Longshot, but ..

I'm looking at a structure under two different sets of
conditions, so
I have two PyMOL windows open.  I'm constantly get_view and
set_view[*] to synchronize the two windows.  Is there some
way to set
things up so that I can drag things around in one window
and have the
scene in the other window automatically follow along?

Thanks,

-michael

[*] actually, I'm a bit lazier than that .. I now have this
run via my
.pymolrc:

VIEW_FILENAME = '/tmp/currentview.txt'
def gv():
     '''write current view to a file (default
/tmp/currentview.txt)'''
     # '...%s...'%VIEW_FILENAME doesn't end up as gv.__doc__
     f =  file(VIEW_FILENAME,'w')
     f.write(str(cmd.get_view()))
     f.close()
def sv():
     '''read current view from a file (default
/tmp/currentview.txt)'''
     # '...%s...'%VIEW_FILENAME doesn't end up as sv.__doc__
     f = file(VIEW_FILENAME)
     cmd.set_view(f.read())
     f.close()
cmd.extend('gv',gv)
cmd.extend('sv',sv)


so I can type 'gv' in one window and 'sv' in the other.

--
www.umich.edu/~mlerner |                        _  |Michael Lerner
This isn't a democracy;| ASCII ribbon campaign ( ) |   Michigan
it's a cheer-ocracy.   |  - against HTML email  X  |  Biophysics
-Torrence,  Bring It On|                       / \ | mler...@umich


-------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc. Do you grep
through log
files for problems?  Stop!  Download the new AJAX search
engine that
makes searching your log files as easy as surfing the  web.
 DOWNLOAD
SPLUNK!
http://ads.osdn.com/?ad_id=7637&alloc_id=16865&op=click
_______________________________________________
PyMOL-users mailing list
PyMOL-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pymol-users






-------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc. Do you grep through log files
for problems?  Stop!  Download the new AJAX search engine that makes
searching your log files as easy as surfing the  web.  DOWNLOAD SPLUNK!
http://ads.osdn.com/?ad_idv37&alloc_id865&op=click
_______________________________________________
PyMOL-users mailing list
PyMOL-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pymol-users




Reply via email to