From: Jacob C. <jc...@gl...> - 2002-03-01 00:34:18
|
Wow, I've really been posting to this list a lot today. I guess free-time to post is what results when I happen to be working with a column with an agonizingly slow flow-through. So anyway, since I didn't want to post both the question and my own interpretation of the answer in the same message, here's my stab at the problem. It sounds like you're trying to execute the commands Warren referenced you to from within PyMol itself. Unless I'm mistaken, you should instead create a file "povray.py" (your python script for outputting the povray .pov file) that contains entire import string f=open("test.pov",'w') f.write(string.join(cmd.get_povray(),'\n')) f.close() So here's what the above script does line by line...although it's not very conventional, I've preceded each line of the script with "**", and the comment of what that line accomplishes with a "#". **import string # I'm not totally familiar with Python, but I'm guessing this contains the tools you need to wrote what is known as "strings", basically just text rather than numbers **f=open("test.pov",'w') # create a file named test.pov (the POVRay file that you will render from) and prepare to write to it **f.write(string.join(cmd.get_povray(),'\n')) # in a nutshell, this fills test.pov with the actual guts of your POVRay file. The problem with cmd.get_povray() is that when Warren says it returns a "tuple of strings", he really means "enough strings to fill a multi-megabyte file". Before I went to PyMol, I used to make 20MB MegaPOVRay include files for images of molecular surfaces. If you don't stuff this massive bit of text to a file, it's not much use to you. **f.close() # we're all done, so go ahead and close test.pov So once you've made your script (povray.py), you should get your molecule all ready, and then execute povray.py. This will create the file test.pov, containing all of the coordinates POVRay will need to do the raytracing. Well, that was my shot at it! Anyone else have something to add? Jacob >I was just in contact with Bronwyn Carlisle, who is having some >problems posting questions to the PyMol mailing list. He had the >following question and asked me to post it for him: > >::begin B. Carlisle quote:: >Also, I'd like to use POVRay to render pics, but I have POVRay for MacOS >already and don't want to lose it, and when I try to install POVRay for >XFree86 it won't do it because of the previous version. Is there any >way around this? It would be nice if Pymol would export POV files like >Swiss PDB viewer does! > >And this is what he said: > >cmd.get_povray() will return a tuple of strings containing PovRay input. >Just write that out to a file: > ># povray.py > >import string >f=open("test.pov",'w') >f.write(string.join(cmd.get_povray(),'\n')) >f.close() > >I am not at all familiar with these sorts of commands - I have used Unix >a little but I'm mostly a Mac person and this Linux/python stuff is >totally foreign to me. So I'm not sure if I can just go >cmd.get_povray() or if I have to do the whole >import string >f=open("test.pov",'w') >f.write(string.join(cmd.get_povray(),'\n')) >f.close() >thing. I sort of figured that the 4 line version includes saving it to >file - but I have no idea where it would end up! And in any case I >tried both and in each case it tells me: > >Traceback (most recent call last): >File "/usr/local/pymol/modules/pymol/parser.py", line 208, in parse >exec(com2[nest],pymol_names,pymol_names) >File "<string>", line 1, in ? >AttributeError: get_povray > >after the line containing cmd.get_povray. I am assuming that python >doesn't understand get_povray without being told to? So how do I tell >it to? Or whatever. > >Bronwyn Carlisle >Biochemistry Department >University of Otago >Dunedin >New Zealand > >Tel 64 3 479 7704 >::end B. Carlisle quote:: >-- >Jacob Corn >Gladstone Institute of Neurological Disease >415.695.3745 >jc...@gl... > >_______________________________________________ >PyMOL-users mailing list >PyM...@li... >https://lists.sourceforge.net/lists/listinfo/pymol-users -- Jacob Corn Gladstone Institute of Neurological Disease 415.695.3745 jc...@gl... |