From: Jason V. <jas...@sc...> - 2011-02-18 08:04:39
|
Hi John, You don't actually need to ray trace before saying any more. That was an older "feature". Here's what worked for me: # save this to examply.py from pymol import cmd cmd.load(sys.argv[1]) cmd.hide() cmd.show("spheres") cmd.set('sphere_scale',0.3) cmd.set('orthoscopic',1) cmd.png("printme.png") using the command line: pymol -qcr examply.py -- 1rsy.pdb This quietly loads PyMOL, runs the commands, renders the image and quits. The command, pymol -qcr examply.py -- 1rsy.pdb keeps PyMOL open, but still renders the image. Did you ensure that you actually had the PDB file (or in your case mymolecule.xyz) in the current working directory? Cheers, -- Jason On Fri, Feb 18, 2011 at 2:46 AM, John Russo <lam...@gm...> wrote: > I'm sorry to bother this mailing list so much but it > seems that I cannot save images. > > This is the script examply.py > > from pymol import cmd > > cmd.load(sys.argv[1]) > cmd.hide() > cmd.show("spheres") > cmd.set('sphere_scale',0.3) > cmd.set('orthoscopic',1) > > cmd.png("printme.png") > > which I execute like this: > > pymol -qrc examply.py -- mymolecule.xyz > > > But I don't get the file printme.png. Executing the > script interactively > > pymol -r examply.py -- mymolecule.xyz > > I can see that the molecule looks ok but still I don't get a png image. > I have to type "png printme.png" in the pymol command line to get it. > > > Does anybody now why is this? > > Thanks. > > > On 02/17/2011 07:30 PM, David Hall wrote: >> No idea if this will fix your problem, but what I've found is portable >> across binaries from Delano Scientific/Schroedinger and >> OS/self-compiled versions of pymol is to instead run: >> >> pymol -r examply.py -- mymolecule.xyz >> >> (or if I'm making pngs, usually pymol -qrck examply.py -- mymolecule.xyz ) >> >> The -- makes it so mymolecule.xyz is passed as an argument to the >> python script instead of as an argument to pymol >> >> Then examply.py is just >> >> from pymol import cmd >> import argv >> import mymodule >> >> cmd.load(sys.argv[1]) >> cmd.hide() >> cmd.show("spheres") >> mymodule.dosomething() >> >> >> Note, that pymol has to be able to find mymodule, which if you're >> using a Delano Scientific/Schrodinger binary can be annoying, but it >> looks like that is already working for you. >> >> Also, http://pymolwiki.org/index.php/Python_Integration makes it look like >> pymol -l examply.py -- mymolecule.xyz >> >> may work, but I've never done it, so no idea how the behavior differs. >> >> -David >> >> >> On Thu, Feb 17, 2011 at 3:05 AM, John Russo<lam...@gm...> wrote: >>> Thanks, that is what I was looking for! I just made a simple >>> script out of it which looks like this >>> >>> #!/usr/bin/env python >>> >>> import pymol >>> from pymol import cmd >>> import mymodule >>> >>> pymol.finish_launching() >>> >>> cmd.load("mymolecule.xyz") >>> cmd.hide() >>> cmd.show("spheres") >>> mymodule.dosomething() >>> >>> >>> I've noticed something strange though. The dosomething() function just >>> colors atoms according to some order parameter. If I execute in the script >>> above it is quite slow, I can see individual atoms being colored. Instead if >>> I execute dosomething() from within the pymol interpreter it is much faster. >>> Any reason for this? >>> >>> >>> >>> >>> >>> >>> On 02/17/2011 04:33 PM, Tsjerk Wassenaar wrote: >>>> Hi John, >>>> >>>> Is this what you're looking for?: >>>> >>>> http://www.pymolwiki.org/index.php/Launching_From_a_Script >>>> >>>> Cheers, >>>> >>>> Tsjerk >>>> >>>> On Thu, Feb 17, 2011 at 8:19 AM, John Russo<lam...@gm...> wrote: >>>>> Hi, >>>>> I'm sorry for making such beginner's questions but searching the manual, >>>>> google >>>>> or the wiki didn't help me. >>>>> >>>>> I know how to extend pymol by writing python functions (through the >>>>> extend command). >>>>> But is it possible to do the opposite? I want to write a script that >>>>> loads a molecule, does something >>>>> to it and then displays the pymol window or outputs a png file. I want >>>>> to this without having to >>>>> enter commands in the pymol command line, since I need to put these >>>>> operations in a script, >>>>> without interactive control on pymol. >>>>> >>>>> Example. I want to write a script examply.py with which I can do >>>>> >>>>> ./examply.py mymolecule.xyz >>>>> >>>>> And for output I want to get mymolecule.png or the pymol window with all >>>>> the operations >>>>> already done. >>>>> >>>>> Any hints? Thank you. >>>>> >>>>> >>>>> John >>>>> >>>>> >>>>> >>>>> ------------------------------------------------------------------------------ >>>>> The ultimate all-in-one performance toolkit: Intel(R) Parallel Studio XE: >>>>> Pinpoint memory and threading errors before they happen. >>>>> Find and fix more than 250 security defects in the development cycle. >>>>> Locate bottlenecks in serial and parallel code that limit performance. >>>>> http://p.sf.net/sfu/intel-dev2devfeb >>>>> _______________________________________________ >>>>> PyMOL-users mailing list (PyM...@li...) >>>>> Info Page: https://lists.sourceforge.net/lists/listinfo/pymol-users >>>>> Archives: http://www.mail-archive.com/pym...@li... >>>>> >>>> >>> >>> ------------------------------------------------------------------------------ >>> The ultimate all-in-one performance toolkit: Intel(R) Parallel Studio XE: >>> Pinpoint memory and threading errors before they happen. >>> Find and fix more than 250 security defects in the development cycle. >>> Locate bottlenecks in serial and parallel code that limit performance. >>> http://p.sf.net/sfu/intel-dev2devfeb >>> _______________________________________________ >>> PyMOL-users mailing list (PyM...@li...) >>> Info Page: https://lists.sourceforge.net/lists/listinfo/pymol-users >>> Archives: http://www.mail-archive.com/pym...@li... >>> > > > ------------------------------------------------------------------------------ > The ultimate all-in-one performance toolkit: Intel(R) Parallel Studio XE: > Pinpoint memory and threading errors before they happen. > Find and fix more than 250 security defects in the development cycle. > Locate bottlenecks in serial and parallel code that limit performance. > http://p.sf.net/sfu/intel-dev2devfeb > _______________________________________________ > PyMOL-users mailing list (PyM...@li...) > Info Page: https://lists.sourceforge.net/lists/listinfo/pymol-users > Archives: http://www.mail-archive.com/pym...@li... > -- Jason Vertrees, PhD PyMOL Product Manager Schrodinger, LLC (e) Jas...@sc... (o) +1 (603) 374-7120 |