* Robert Campbell <r...@post.queensu.ca> [2003-10-10 13:04] wrote:

<snip all that stuff about the new scripts>

P.S. Warren, there is still a problem with drawing CGO cylinders
and sausages along the (1,-1,1) direction -- they don't appear unless
you ray trace the image:

As an example:

   load 1avv.pdb
   run draw_symops_cctbx.py
   draw_symops 1avv

One of the three-fold axes originating at the origin does not show up.
To test this I offer the following:

#! /usr/bin/python
from pymol.cgo import *
from pymol import cmd

""" draws cylinders in the directions:

(1, 1, 1)
(-1, -1, 1)
(-1, 1, 1)
(1, -1, 1)  

The last one won't appear, unless one of the directions is modified by a
very small amount (e.g below using 30.000001 instead of 30.0)

"""

ax_1_yes = [
CYLINDER, 0.0, 0.0, 0.0, 30.0, 30.0, 30.0, 0.2, 0.0, 1.0, 0.0, 0.0, 1.0, 0.0, 
CYLINDER, 0.0, 0.0, 0.0, -30.0, -30.0, 30.0, 0.2, 0.0, 1.0, 0.0, 0.0, 1.0, 0.0, 
CYLINDER, 0.0, 0.0, 0.0, -30.0, 30.0, 30.0, 0.2, 0.0, 1.0, 0.0, 0.0, 1.0, 0.0, 
CYLINDER, 0.0, 0.0, 0.0, 30.000001, -30.0, 30.0, 0.2, 0.0, 0.0, 1.0, 0.0, 0.0, 
1.0, 
]
ax_2_yes = [
CYLINDER, 0.0, 0.0, 0.0, 30.0, 30.0, 30.0, 0.2, 0.0, 1.0, 0.0, 0.0, 1.0, 0.0, 
CYLINDER, 0.0, 0.0, 0.0, -30.0, -30.0, 30.0, 0.2, 0.0, 1.0, 0.0, 0.0, 1.0, 0.0, 
CYLINDER, 0.0, 0.0, 0.0, -30.0, 30.0, 30.0, 0.2, 0.0, 1.0, 0.0, 0.0, 1.0, 0.0, 
CYLINDER, 0.0, 0.0, 0.0, 30.0, -30.000001, 30.0, 0.2, 0.0, 1.0, 1.0, 0.0, 1.0, 
1.0, 
]
ax_3_yes = [
CYLINDER, 0.0, 0.0, 0.0, 30.0, 30.0, 30.0, 0.2, 0.0, 1.0, 0.0, 0.0, 1.0, 0.0, 
CYLINDER, 0.0, 0.0, 0.0, -30.0, -30.0, 30.0, 0.2, 0.0, 1.0, 0.0, 0.0, 1.0, 0.0, 
CYLINDER, 0.0, 0.0, 0.0, -30.0, 30.0, 30.0, 0.2, 0.0, 1.0, 0.0, 0.0, 1.0, 0.0, 
CYLINDER, 0.0, 0.0, 0.0, 30.0, -30.0, 30.000001, 0.2, 1.0, 0.0, 1.0, 1.0, 0.0, 
1.0, 
]

ax_3_no = [
CYLINDER, 0.0, 0.0, 0.0, 30.0, 30.0, 30.0, 0.2, 1.0, 0.5, 0.0, 1.0, 0.5, 0.0, 
CYLINDER, 0.0, 0.0, 0.0, -30.0, -30.0, 30.0, 0.2, 1.0, 0.5, 0.0, 1.0, 0.5, 0.0, 
CYLINDER, 0.0, 0.0, 0.0, -30.0, 30.0, 30.0, 0.2, 1.0, 0.5, 0.0, 1.0, 0.5, 0.0, 
CYLINDER, 0.0, 0.0, 0.0, 30.0, -30.0, 30.0, 0.2, 0.0, 1.0, 0.0, 0.0, 1.0, 0.0, 
]


cmd.load_cgo(ax_1_yes,'ax_1_yes')
cmd.load_cgo(ax_2_yes,'ax_2_yes')
cmd.load_cgo(ax_3_yes,'ax_3_yes')
cmd.load_cgo(ax_3_no,'ax_3_no')

If one clicks on the 4 objects one by one, you'll see that the "ax_3_no"
object is missing one cylinder that is present in the others.

Cheers,
Rob
-- 
Robert L. Campbell, Ph.D.                         <r...@post.queensu.ca>
Senior Research Associate                            phone: 613-533-6821
Dept. of Biochemistry, Queen's University,             fax: 613-533-2497
Kingston, ON K7L 3N6  Canada       http://adelie.biochem.queensu.ca/~rlc
    PGP Fingerprint: 9B49 3D3F A489 05DC B35C  8E33 F238 A8F5 F635 C0E2

Reply via email to