Thank you Bob for your thorough explanation. I think that I finally understand.
While jmol's biggest advantage may be with its ability to let users interact
with structures, it is also an excellent tool for making movie, especially with
the povray export. If I wanted to make a movie of a molecule rotating about
the y-axis, the distance between the two cylinders would not have to change,
because I would not have to worry about rotation about any other axis. Do you
think that it would be simple for me to make this modification? I have looked
at the code, but I have not found where the distance between the two cylinders
is defined and the algorithm you mentioned is implemented. I would very much
appreciate if you could give me some hints as to how I can disable the changing
of the distance between the two cylinders representing a double bond.
Thank you very much.
Jay
On 8/24/10 3:16 PM, "Robert Hanson" <hans...@stolaf.edu> wrote:
On Mon, Aug 23, 2010 at 11:01 AM, Shore, Jay <jay.sh...@sdstate.edu> wrote:
I really like jmol's multiple bond representation - it is the only
visualization tool that I know of that actually
that actually does multiple bonds.
The distance between the cylinders (that represent a double bond) changes when
the molecule is rotated depending on the relative orientation of the bond and
the axis of rotation. For example, if you spin a molecule with a double bond
on an axis parallel to the double bond there is no change in distance between
the cylinders representing the double bond. If you spin the same molecule on
an axis perpendicular to the double bond, the distance between the cylinders
change.
correct
If you spin benzene about an angle perpendicular to one of the double bonds,
the distance between the cylinders for the different double bonds change
differently. If you turn smartAromatic off, the distance between the dashed
line and the solid line is different depending on the relative orientation of
the spin axis and the bond axis.
correct
I would assume that the apperent distance between the two cylinders
representing a double bond should always be the same no matter how the molecule
was rotated. I would also assume that when a molecule is rotated the double
bonds are rotated to keep their apparent distance the same. I just wonder if
the angle between the the bond axis and the rotation axis was considered when
rotating the double bonds.
Jay, that's not the algorithm. The algorithm sets the distance between the
lines of a double bond to be proportional to the distance between the bond
endpoints on the screen. This ensures smooth transition between vertical and
horizontal bonds and scales the bond to zoom appropriately.
Notice that multiple bond lines are not shown in perspective -- always
parallel. This is because they are calculated using 2D screen coordinates, not
3D molecular coordinates (and, I guess, that was not desired).
So let's see, is there anything wrong with the first assumption? Given that
assumption:
1) What should looking straight down a double bond look like?
2) Starting with whatever your answer to (1) is, now rotate that model by a
slight amount around x:
rotate x 20
Now what should it look like?
2) Starting with whatever your answer to (1) is again, now rotate that model by
a slight amount around y:
rotate y 20
Now what should it look like?
3) How does one smoothly get from pictures (2) to (1) to (3)?
I think that's the problem solved by the algorithm used. But if you have any
example software that does this more to your liking, show it to us so we can
see. Maybe there's a better algorithm.
Bob
------------------------------------------------------------------------------
This SF.net Dev2Dev email is sponsored by:
Show off your parallel programming skills.
Enter the Intel(R) Threading Challenge 2010.
http://p.sf.net/sfu/intel-thread-sfd
_______________________________________________
Jmol-users mailing list
Jmol-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/jmol-users