Screenshot instructions:
Windows
Mac
Red Hat Linux
Ubuntu
Click URL instructions:
Rightclick on ad, choose "Copy Link", then paste here →
(This may not be possible with some types of ads)
From: William Stein <wstein@gm...>  20071224 20:28:22

Hello JmolDevel, I'm the project directory of Sage (http://sagemath.org), an open source mathematics software project, which  among other things  has a webbrowser based graphical interface. See screenshots here: http://sagemath.org/screen_shots/ After searching for a long time for a good open source option for 3d *interactive* graphics embedded in the Sage notebook it seems that jmol is  oddly enough  the best option, even though you guys designed it for chemistry. We've been adapting it for doing general mathematical visualization, and just included it standard in sage2.9.1, which was released today. We would have liked to use http://www.javaview.de/, but their license is crap (from the point of view of Sage). Thoughts? 1. What is the relation between javaview and jmol? 2. What is the relation between java3d and jmol? 3. Are you aware of jmol being used for applications outside of chemistry? E.g., applications to general mathematical visualization? 4. Do you have any advice as to how jmol could be best used for more general mathematical visualization? We can use/abuse the existing molecular modeling interface, but perhaps we should somehow coordinate with you and modify jmol itself to have more general functionality? 5. Viewing examples here: http://www.javaview.de/demo/index.html Do you think we can do as good  or better  then they do, but using jmol? MANY MANY thanks for the huge amount of work you have all put into creating a very powerful easytouse and flexible 3d visualization toolkit!  William Stein Associate Professor of Mathematics University of Washington http://wstein.org 
From: Bob Hanson <hansonr@st...>  20071224 23:20:08

Dear William, William Stein wrote: >Hello JmolDevel, > >I'm the project directory of Sage (http://sagemath.org), an open >source mathematics software project, >which  among other things  has a webbrowser based graphical >interface. See screenshots here: > > http://sagemath.org/screen_shots/ > >After searching for a long time for a good open source option for 3d >*interactive* graphics embedded >in the Sage notebook it seems that jmol is  oddly enough  the >best option, even though you guys >designed it for chemistry. > Oh, I am not surprised. Jmol has some very nice capabilities that have nothing to do with chemistry. We are delighted to see this expanded use. > We've been adapting it for doing general >mathematical visualization, and >just included it standard in sage2.9.1, which was released today. > > > I would be very interested in hearing about some of your adaptations. > 1. What is the relation between javaview and jmol? > > what is javaview? OK (see below) > 2. What is the relation between java3d and jmol? > > jmol uses no java3d. See http://jmol.sourceforge.net/technotes/ (maybe a bit out of date  it's a bit more complicated than that now, since we have Maya, VMRL, and PovRAY exporters) > 3. Are you aware of jmol being used for applications outside of >chemistry? E.g., applications > to general mathematical visualization? > > I am not > 4. Do you have any advice as to how jmol could be best used for more general > mathematical visualization? We can use/abuse the existing >molecular modeling > interface, but perhaps we should somehow coordinate with you and modify > jmol itself to have more general functionality? > > I would love to collaborate with you on this, either to incorporate generally useful mathematical functionality or help you develop a "JmolMath" adaptation. Isosurfaces in particular have been worked on quite a bit, and you can map f(x,y) at least onto an isosurface directly. One of the nice aspects of how Jmol is set up is that we can now add functionality with virtually no expense to general users. The functionality is all modularized into separate Jar files so that only that functionality that is used is loaded. You get a basic package, then only if you use biomolecular systems, for example, does the browser download those. If you create mathrelated functionality, we can add it in that way as well. > 5. Viewing examples here: > http://www.javaview.de/demo/index.html > Do you think we can do as good  or better  then they do, but >using jmol? > > > I don't see anything at http://sagemath.org/screen_shots/misc/ that couldn't be done today in Jmol. One thing we don't have is nice graphical axis rendering. But that should be pretty easy to implement. All the surfaces would be no problem. You would want to add a calculation engine that runs the mathematical calculation and creates either the isosurface itself or a scalar field that can be used to generate an isosurface based on it. The demo animations at javaview's site could be more involved, but that just means they would be an interesting challenge. Objects such as I see at http://www.javaview.de/demo/PaParmSurface.html would look WAY better in Jmol, because you wouldn't have them be so grainy. We can run 100s of thousands of triangles with almost no delay in realtime rotations. I think the hardest part would be the translation of a string like "2./(1.+(u*sin(v))^2)*sqrt(1.+u*u)*sin(v)*cos(uatan(u))" into real math. But maybe that's not a big deal for you. Bob Hanson  Robert M. Hanson Professor of Chemistry St. Olaf College Northfield, MN http://www.stolaf.edu/people/hansonr 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 
From: Bob Hanson <hansonr@st...>  20071225 00:40:12

William, give this a try. It's all I have time for today, but it gives you some sense of Jmol's capability. http://chemapps.stolaf.edu/jmol/docs/examples11/math.htm Bob William Stein wrote: >Hello JmolDevel, > >I'm the project directory of Sage (http://sagemath.org), an open >source mathematics software project, >which  among other things  has a webbrowser based graphical >interface. See screenshots here: > > http://sagemath.org/screen_shots/ > >After searching for a long time for a good open source option for 3d >*interactive* graphics embedded >in the Sage notebook it seems that jmol is  oddly enough  the >best option, even though you guys >designed it for chemistry. We've been adapting it for doing general >mathematical visualization, and >just included it standard in sage2.9.1, which was released today. > >We would have liked to use http://www.javaview.de/, but their license >is crap (from the point >of view of Sage). > >Thoughts? > > 1. What is the relation between javaview and jmol? > 2. What is the relation between java3d and jmol? > 3. Are you aware of jmol being used for applications outside of >chemistry? E.g., applications > to general mathematical visualization? > 4. Do you have any advice as to how jmol could be best used for more general > mathematical visualization? We can use/abuse the existing >molecular modeling > interface, but perhaps we should somehow coordinate with you and modify > jmol itself to have more general functionality? > 5. Viewing examples here: > http://www.javaview.de/demo/index.html > Do you think we can do as good  or better  then they do, but >using jmol? > >MANY MANY thanks for the huge amount of work you have all put into >creating a very >powerful easytouse and flexible 3d visualization toolkit! > > > >  Robert M. Hanson Professor of Chemistry St. Olaf College Northfield, MN http://www.stolaf.edu/people/hansonr 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 
From: William Stein <wstein@gm...>  20071225 00:58:47

On Dec 24, 2007 5:40 PM, Bob Hanson <hansonr@...> wrote: > William, give this a try. It's all I have time for today, but it gives > you some sense of Jmol's capability. > > http://chemapps.stolaf.edu/jmol/docs/examples11/math.htm > I'm rather busy because it is Christmas eve. Just some quick remarks: 1. I'm _extremely_ excited that you're so enthusiastic about Jmol and Sage. I hope you'll consider coming to one of the Sage workshops soon. The next will be at IPAM (at UCLA) in February (59), 2008. 2. We (mainly Robert Bradshaw!) have actually already done quite a lot with jmol and Sage already, involving graphing functions, drawing primitives, etc.  it definitely works well, but could with your help be made to work much better. When I have time I'll explain how to try it out.  William > > >Hello JmolDevel, > > > >I'm the project directory of Sage (http://sagemath.org), an open > >source mathematics software project, > >which  among other things  has a webbrowser based graphical > >interface. See screenshots here: > > > > http://sagemath.org/screen_shots/ > > > >After searching for a long time for a good open source option for 3d > >*interactive* graphics embedded > >in the Sage notebook it seems that jmol is  oddly enough  the > >best option, even though you guys > >designed it for chemistry. We've been adapting it for doing general > >mathematical visualization, and > >just included it standard in sage2.9.1, which was released today. > > > >We would have liked to use http://www.javaview.de/, but their license > >is crap (from the point > >of view of Sage). > > > >Thoughts? > > > > 1. What is the relation between javaview and jmol? > > 2. What is the relation between java3d and jmol? > > 3. Are you aware of jmol being used for applications outside of > >chemistry? E.g., applications > > to general mathematical visualization? > > 4. Do you have any advice as to how jmol could be best used for more general > > mathematical visualization? We can use/abuse the existing > >molecular modeling > > interface, but perhaps we should somehow coordinate with you and modify > > jmol itself to have more general functionality? > > 5. Viewing examples here: > > http://www.javaview.de/demo/index.html > > Do you think we can do as good  or better  then they do, but > >using jmol? > > > >MANY MANY thanks for the huge amount of work you have all put into > >creating a very > >powerful easytouse and flexible 3d visualization toolkit! > > > > > > > > > > >  > > Robert M. Hanson > Professor of Chemistry > St. Olaf College > Northfield, MN > http://www.stolaf.edu/people/hansonr > > > 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 email is sponsored by: Microsoft > Defy all challenges. Microsoft(R) Visual Studio 2005. > http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ > _______________________________________________ > Jmoldevelopers mailing list > Jmoldevelopers@... > https://lists.sourceforge.net/lists/listinfo/jmoldevelopers >  William Stein Associate Professor of Mathematics University of Washington http://wstein.org 
From: Miguel <miguel@jm...>  20071225 13:24:11

William wrote: > Thoughts? Very interesting. The org.jmol.g3d classes were designed to stand separately and to be usable apart from Jmol. Frankly, I expected gamers to adopt/adapt it ... but so far that hasn't happened. > 1. What is the relation between javaview and jmol? None that I am aware of. For my own part, I am not in the academic world and am not familiar with Javaview. I did not encounter javaview back in 2002 when I conducted my survey of javabased 3d graphics engines to use in Jmol. > 2. What is the relation between java3d and jmol? None ... by design. At the time that I started writing the Jmol g3d graphics package it was pretty clear that java3d was losing mindshare ... if it ever had any. There was limited hardware/driver support and (it seemed) only one or two developers working on it within Sun. More importantly, java3d placed constraints on the client that were unacceptable. My goal for Jmol was that it could run as an applet on *any= * javaenabled web browser without requiring a special client install. The fact that java3d required client installation of libraries made it unacceptable for Jmol's target audience of casual users and students. OpenGL had similiar issues back in 2002 ... and, to the best of my knowledge, many of those javarelated issues still remain. > 3. Are you aware of jmol being used for applications outside of > chemistry? E.g., applications > to general mathematical visualization? Not that I am aware of. Bob Hanson and the current Jmol development team may know more. As I said above, I expected someone to pick it up and use it for interactive javabased games, but so far that hasn't happened. Actually, I *am* aware of at least one project where they are interested in using org.jmol.g3d within their own application ... but their biochemistry so they are not looking at it from a mathematics or compute= r science perspective. > 4. Do you have any advice as to how jmol could be best used for more > general > mathematical visualization? We can use/abuse the existing > molecular modeling > interface, but perhaps we should somehow coordinate with you and > modify > jmol itself to have more general functionality? My time is quite limited, but I would be interested in this. I am sure that Bob would be very interested in pursuing this. > 5. Viewing examples here: > http://www.javaview.de/demo/index.html > Do you think we can do as good  or better  then they do, but > using jmol? I don't see any reason why not. In all of the samples shown at http://www.javaview.de/demo/index.html the number of discrete points involved is quite small ... relative to the ten= s of thousands needed for viewing proteins. I have always been concerned about Jmol's ability to render triangles. Fo= r rendering molecules I put my focus on fast rendering of spheres and lines= . Relative to other 3d APIs, there is limited little support for rendering triangles. There is, for example, no displaylist mechanism. I think that would be a problem for potential gaming and virtualreality applications. (Bob Hanson other jmoldevelopers might have done more work in this area over the past 18 months that I am not familiar with.) The surfaces that I see at http://www.javaview.de/demo/index.html look simple and clean. I'm sure that the Jmol graphics engine would work just fine. > MANY MANY thanks for the huge amount of work you have all put into > creating a very > powerful easytouse and flexible 3d visualization toolkit! I am exceedingly pleased that you have found the org.jmol.g3d Trying to maintain an objective perspective ... JavaView looks very powerful and quite mature. It seems a shame that you can't build upon the seemingly outstanding work of that project. You said that licensing constraints were too onerous ... Can you talk about that? Having another _user_ for org.jmol.g3d would certainly be valuable. It would be a big step in helping to roundout the API and to make it stand alone on its own. The development of the org.jmol.g3d API would benefit tremendously from the input of someone with formal OpenGL graphics training and and experience. Your interest in using Jmol for another branch of scientific education is the best holiday present I received this year! Miguel >  > William Stein > Associate Professor of Mathematics > University of Washington > http://wstein.org 
From: William Stein <wstein@gm...>  20071226 03:07:27

On Dec 24, 2007 11:38 PM, Bob Hanson  Jmol <hansonr@...> wrote: > OK, from the exchanges of 12/14/07 and since, you guys are pretty > fast. I'm impressed. We haven't modified jmol itself at all yet. All we (= Robert Bradshaw, mainly) have done is figure out how to embed jmol in the sage notebook and create scripting files so that jmol will display all of our 3d primitives so that all 3d pictures we can already draw can be rendered using jmol. We've run into some issues, e.g., http://trac.sagemath.org/sage_trac/ticket/1537 involving "triangulation and shadow weirdness" whose fix might involve having to actually change jmol. I think we (the Sage developers) still barely understand what jmol is capable. > Allow me to introduce myself. http://www.stolaf.edu/people/hansonr. > Professor of Chemistry, St. Olaf College; Current Principal Developer, > Jmol. Nice to meet you. I'm William Stein (http://wstein.org), Associate Professor of Mathematics, University of Washington (Seattle, WA). > What can I tell you about Jmol? Sounds like you have found the > documentation and experimented a bit with at least writing some pmesh > files that Jmol can read. Also take a look at the HTML files in > http://chemapps.stolaf.edu/jmol/docs/examples11, particularly: > > http://chemapps.stolaf.edu/jmol/docs/examples11/pmesh.htm Oh, cool, you can do translucent surfaces! Nice. The moveto is also frickin' cool. And that this is also scriptable from javascript is great  this is exactly what I've been looking for. > http://chemapps.stolaf.edu/jmol/docs/examples11/isosurface.htm Wow, those isosurfaces are gorgeous. I'll have to figure out how to define them... > http://chemapps.stolaf.edu/jmol/docs/examples11/new.htm > http://chemapps.stolaf.edu/jmol/docs/examples11/new2.htm Wow, this is amazing, especially example 30. > http://chemapps.stolaf.edu/jmol/docs/examples11/new0.htm > > We are just about to deliver Jmol 11.4.0, so a lot of recent work has > been going into detailed testing of functionality. I see you are > talking about pmesh. And if you like that, fine. It works great, but > the script interface is a bit slow because of all the string parsing. > We could set up a direct Java interface, or even a binary file format > if that would help. I think it's just the first thing we thought of that would work somewhat for drawing surfaces. Should we be using something else? > Realize that there are two Jmol components  the standalone > application and the applet. Right now in Sage if you draw a 3d image and render it from the command line it pops up the standealone application. If you render from the notebook it uses the applet. > The Jmol application has some interesting > features, like commandline creation of JPG and PovRAY output, and > generic "exporter" capability that is easily expanded. The applet has > tremendous interactive capability, but not so much with pmesh objects > as of now. Still, that could be possible, and the 3D annotation > capabilities are really outstanding. (You can create 3D annotations > ("echo"s) that can serve as hypertext links, for example, and you can > create points in space that visible or not can be clicked on and will > allow callbacks to the web page. The whole thing is connected with > LiveConnect and scriptable via JavaScript. Can you create callbacks like that using the java applet? This would be great for Sage, I think. > A very interesting capability of Jmol that has arisen in the past year > is the capability to save and restore the current state of the applet >  everything. So if you set up a "scene" in the application you can > just write the state file to disk and open it with the applet, and you > will be right where you left off. This has been used in a variety of > contexts to good effect. I've been interested in exploring it in terms > of collaborative visualization. (I do something, save a state, send it > to you, you load it and see the exact same thing.) You might be > interested in that. Very cool. Sage also uses tachyon3d for raytraced rendering and it would be nice to have a way to find out what angle the user selected from the applet, so we can render the same scene using tachyon. Also, it would be good that if a user closes the sage notebook then reopens it, that all there 3d images are restored to exactly the same state. > Recent work you might also be interested in is in the area of > synchonization  multiple applets can be synchronized so that > commands or mouse actions on one drive the others. This is working > perfectly now, and it is just one step away from being able to script > remotely so that, for instance, multiple people viewing the same page > could see the same realtime 3D manipulations of a mathematical > object. That's very cool. This could be relevant to when multiple people view the same sage worksheet at once (currently we have no interesting synchronization in this case, but we plan on it). > I'd be very interested in your feedback relating to the JVXL format > for isosurface compression. We think we have a winner there. It really > makes isosurfaces deliverable over the web for the first time. This > has started to see use for the delivery of protein surfaces. See > http://chemapps.stolaf.edu/jmol/docs/misc/JVXL_format.pdf The correct link is: http://chemapps.stolaf.edu/jmol/docs/misc/JVXLformat.pdf I didn't know about it until just now. In fact, I'm not even completely sure what an isosurface is or how we can use them for sage yet. I'll read the above article soon. > I put together a little page for you guys to experiment with. It's at > http://chemapps.stolaf.edu/jmol/docs/examples11/math.htm > Try a few things there; see what you think. The example uses 100,000 > quadrilaterals, and it's pretty fast in terms of rendering. Awesome! > Just to set the record straight  the graphics engine was written by > Michael Howard, a software engineer, not a chemist. Everyone who has > looked at this cannot believe this is Java, and it's because Michael > did such an outstanding job with the rasterization methods. No Java3D > here; no OpenGL. Just barebones writethepixels coding. > Unbelievable. Yep. > I came on board a couple of years ago as a chemist with lots of > software experience, but by then the Java primitives for graphics > rendering were all in place. Credit for that goes exclusively to > Michael (aka Miguel). I'm now the principal developer. My focus has > been on expanding Jmol's capability within the molecular visualization > world. But I'm thrilled that you folks are interested in it as well. > Very cool. Excellent  I'm glad you see Jmol as something that should grow into other areas. > > Q: What do you have now in the area of Java applets? Essentially nothing. The Sage notebook is an Ajax app  lots of javascript and serverside code (in Python, using Twisted web2). We basically don't use java applets at all in Sage, though it's always been my plan to do so. > Q: Is pmesh the right delivery mechanism? Or is there something else > that can be delivered to Jmol, such as primitive function that let > Jmol query for the values of x(u,v), y(u,v), z(u,v) and thus build its > own pmesh internally? Something like: > > Point3f xyzFromUv(float u, float v); > > Could you build that into an accompanying applet, so the two could > talk to each other? That could be fun. The Sage notebook is an ajax app, and evaluating a function like this to have the mesh built in jmol would potentially be very slow: 1. Jmol requests evaluation of a value 2. Javascript notebook code queries the Sage server for the value of the function 3. The sage notebook server queries a running Sage compute process for the value of a function. 4. The Sage compute process calls some library function, maybe defined in PARI or Maxima. 5. The sage notebook server gets the value of the function 6. The javascript notebook gets the value, then returns that two the Jmol applet. This would not be good for building a mesh. If the Sage notebook were a java app and Sage were written in Java, it would be a different story, but that's not what Sage is. > Q: Are you most interested in commandline/filebased interaction with > the Jmol application? Or are you more interested in the possibilities > involving the applet? I am personally much more interested in the applet. For command line users there are other potentially very good options for 3d visualization, e.g., vtk with mavayi2, whose development http://www.enthought.com/ helps support. But that vtkbased stuff is of no use for the Sage notebook. > Q: What are you using right now for the cool graphics I see at your > site? For 3d graphics, mostly Tachyon3d: http://jedi.ks.uiuc.edu/%7Ejohns/raytracer/ It's small, lightweight, very fast, but completely noninteractive. William 
From: Miguel <miguel@jm...>  20071227 02:36:47

> We've run into some issues, > e.g., > > http://trac.sagemath.org/sage_trac/ticket/1537 > > involving "triangulation and shadow weirdness" whose fix might involve > having > to actually change jmol. I suspect that you will encounter other issues with lighting on very flat triangles and "cracking" in triangulated surfaces. As I understand it, these are typical problems with graphics engines ... and there was never much demand for these kinds of things within Jmol. > Oh, cool, you can do translucent surfaces! Translucent surfaces were originally done through 'screening', where everyother pixel was painted. I think that Bob Hanson was did some rework in this area about 6 months a= go. > Nice. The moveto is > also frickin' cool. Yes, I always thought that it was very neat. Excellent when you want to show a specific detail of a molecule. > I think it's just the first thing we thought of that would work somewha= t > for drawing surfaces. Should we be using something else? Passing a string to pmesh is OK for now ... that may be all there is. But longer term you will probably want a more efficient interface that allows you to pass binary data structures ... as a display list of triangles to be rendered. > Can you create callbacks like that using the java applet? This would b= e > great for Sage, I think. There is a callback mechanism that works OK for many applications. Bob certainly knows more about the current state of this. >> I put together a little page for you guys to experiment with. It's at >> http://chemapps.stolaf.edu/jmol/docs/examples11/math.htm >> Try a few things there; see what you think. The example uses 100,000 >> quadrilaterals, and it's pretty fast in terms of rendering. > > Awesome! Bob ... that is beautiful! >> Q: What do you have now in the area of Java applets? > > Essentially nothing. The Sage notebook is an Ajax app  lots of > javascript > and serverside code (in Python, using Twisted web2). We basically > don't use java applets at all in Sage, though it's always been my plan > to do so. Jmol is a pretty good example of a relatively complex applet that runs on lots of browsers. >> Could you build that into an accompanying applet, so the two could >> talk to each other? That could be fun. > > The Sage notebook is an ajax app, and evaluating a function like this t= o > have the mesh built in jmol would potentially be very slow: > 1. Jmol requests evaluation of a value > 2. Javascript notebook code queries the Sage server for the value > of the function > 3. The sage notebook server queries a running Sage compute process f= or > the value of a function. > 4. The Sage compute process calls some library function, maybe defin= ed > in PARI or Maxima. > 5. The sage notebook server gets the value of the function > 6. The javascript notebook gets the value, then returns that two > the Jmol applet. > > This would not be good for building a mesh. If the Sage notebook were = a > java > app and Sage were written in Java, it would be a different story, but > that's not > what Sage is. Hmmm ... well then maybe passing pmesh strings isn't so bad after all :) Miguel 
Sign up for the SourceForge newsletter:
No, thanks