From: Shore, J. <Jay.Shore@SDSTATE.EDU> - 2010-09-09 16:59:45
|
I think that the issues involved with the rendering are more complicated than I had initially realized. I had thought that I could just stop the distance between the double bonds from changing if I constrained myself to rotation about one axis - right now I am not sure if that is true of desirable. Please correct me if I am wrong in the following: It seems that jmol sets the orientation of the two cylinders of the double bonds based on the users perspective. If the bonds are pointing at the user there is no separation, if the bonds are orthogonal to the user the distance between the bonds are maximum. This is consistent with the double bonds being 2D and not 3D. If I do not want the distance between the two cylinders to change, I would probably have to make the double bonds three dimensional and the relative orientation of the cylinders would be fixed to the molecule. The questions become: how hard would it be to do this? and would it be worth the time? For the vast majority of structures there should be simple rules as to the orientation of the two cylinders, but there will always be some molecules that do not adhere to these rules. It seems like it has to be one of these two ways. Jay On 9/9/10 11:32 AM, "rg...@el..." <rg...@el...> wrote: Bob, My choice of words is leading to some confusion. In the current implememtation as the model is rotated the double bond rotates so the user sees two sticks in almost all orientations. This requires rotating the bond cylinders as the molecule rotates. Sometimes the aliasing of edges of the cylinders is quite pronounced and in other orientations not. My use of "jumpy" is referring to the reorientation of the bond cylinders. Even though the rotation of the cylinders themselves is smoothly done they are moving independently of the motion of the molecule and this movement can be distracting depending on what is being focused upon. In those cases I'd prefer to have the option to force the cylinders of the double bonds to stay in one orientation, e.g. all in the plane of an aromatic ring, regardless of how I am having the molecule move even though that may well result in the cylinders eclipsing. Rich On Thu, September 9, 2010 11:01 am, Robert Hanson wrote: > I'm not sure I'm understanding, Rich. > > You're saying hand-rotating the model, you are willing to see some jumping > around (not the current situation), but for movies you would like to see > it > smoother (current situation). But also for movies you would like to always > have the double bond in the plane (which requires jumpiness). What am I > missing? > > Bob > > > On Thu, Sep 9, 2010 at 7:56 AM, <rg...@el...> wrote: > >> Something else to consider is the intent of the display. Sitting at the >> screen rotating a molecule by hand to get to a particular view of the >> molecule is one thing. Creating a movie which is is presumably intended >> to >> illustrate something about the molecule is another. >> >> In the former having things jump around a bit in order to always show >> the >> imposed bond orders is acceptable. In the latter this is often just >> distracting to the eye and could be dispensed with. Our brains are good >> at >> managing the loss of a particular visual cue yet still retaining the >> information so having what was a double-bond gradually (key word) morph >> into single for a moment as it rotates is not a real problem. >> >> I'd like to see a switch which I could set to have the sticks of >> multiple >> bonds remain in a single plane for movies. >> >> Rich >> >> >> On Wed, September 8, 2010 11:17 pm, Robert Hanson wrote: >> > [should move this to Jmol-Developers list...] >> > >> > Jay, before you go after this, I'd like to hear what you expect to >> observe >> > under various conditions -- >> > >> > A --- bond is vertical and is rotated along its axis. >> > B --- bond is vertical and is rotated perpendicular to its axis until >> it >> > is >> > pointing into the plane. >> > C --- bond is horizontal and is rotated around the y axis until it is >> > pointing into the plane. >> > >> > B then reverse of C. >> > >> > I'm just interested in what you are expecting. >> > >> > If you are interested in playing, the algorithm is in >> > org.jmol.shape.SticksRenderer.java, method drawBond(int). Notice that >> it >> > is >> > working entirely in 2D, not 3D. >> > >> > Bob >> > >> > On Wed, Sep 8, 2010 at 9:42 PM, Shore, Jay <Jay...@sd...> >> wrote: >> > >> >> >> >> >> >> 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" <ha...@st...> wrote: >> >> >> >> >> >> >> >> On Mon, Aug 23, 2010 at 11:01 AM, Shore, Jay <Jay...@sd...> >> >> 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 >> >> Jmo...@li... >> >> https://lists.sourceforge.net/lists/listinfo/jmol-users >> >> >> >> >> > >> > >> > -- >> > Robert M. Hanson >> > Professor of Chemistry >> > St. Olaf College >> > 1520 St. Olaf Ave. >> > Northfield, MN 55057 >> > http://www.stolaf.edu/people/hansonr >> > phone: 507-786-3107 >> > >> > >> > If nature does not answer first what we want, >> > it is better to take what answer we get. >> > >> > -- Josiah Willard Gibbs, Lecture XXX, Monday, February 5, 1900 >> > >> ------------------------------------------------------------------------------ >> > 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 >> > Jmo...@li... >> > https://lists.sourceforge.net/lists/listinfo/jmol-users >> > >> >> >> >> >> ------------------------------------------------------------------------------ >> 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 >> Jmo...@li... >> https://lists.sourceforge.net/lists/listinfo/jmol-users >> > > > > -- > Robert M. Hanson > Professor of Chemistry > St. Olaf College > 1520 St. Olaf Ave. > Northfield, MN 55057 > http://www.stolaf.edu/people/hansonr > phone: 507-786-3107 > > > If nature does not answer first what we want, > it is better to take what answer we get. > > -- Josiah Willard Gibbs, Lecture XXX, Monday, February 5, 1900 > ------------------------------------------------------------------------------ > 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 > Jmo...@li... > https://lists.sourceforge.net/lists/listinfo/jmol-users > ------------------------------------------------------------------------------ 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 Jmo...@li... https://lists.sourceforge.net/lists/listinfo/jmol-users |