Dear Jmolers, with the end of Java embedded plugins, we are now relying on JSmol for displaying molecular structures in web pages. If JSmol bio/geo/chemicabilities appear to me as limitless, I am encountering other limitations in respect with its performances : some web applications I made are particularly slow even if tuning is possible to some extent. This is why I took a look at the alternatives currently flourishing on the web which rely on WebGL to display the 3D scenes in the browser. None of them could be considered as a replacement to JSmol for my purposes, but I thought it could be interesting to share my findings with the list.
- 3Dmol.js : http://3dmol.csb.pitt.edu/index.html <http://3dmol.csb.pitt.edu/index.html> Article in PMC : http://www.ncbi.nlm.nih.gov/pmc/articles/PMC4393526/ <http://www.ncbi.nlm.nih.gov/pmc/articles/PMC4393526/> Github Repo : https://github.com/3dmol/3Dmol.js <https://github.com/3dmol/3Dmol.js> Has the simplest embedding mechanisms I have ever seen, based on HTML markup or url formatting. Abilities to compute isosurfaces in parallel (use web workers that don’t hang the web browser during the computation). Display most common bio-molecular representations, labels, select and color abilities. - NGL : documentation <http://arose.github.io/ngl/doc/#User_manual/Introduction/Welcome> NGL viewer demonstration http://proteinformatics.charite.de/ngl/html/ngl.html <http://proteinformatics.charite.de/ngl/html/ngl.html> Article in Nucleic Acid Research :http://nar.oxfordjournals.org/content/early/2015/04/28/nar.gkv402.full <http://nar.oxfordjournals.org/content/early/2015/04/28/nar.gkv402.full> Github Repo : https://github.com/arose/ngl <https://github.com/arose/ngl> Made by Alexander Rose, a contributor to this list ! Has probably the most beautiful graphic capabilities. Many bio-molecular representations (some unknown to me such as « hyperballs » and « ropes » ). Abilities to act on selections with a jmol-like syntax. - PV : http://biasmv.github.io/pv/ <http://biasmv.github.io/pv/> GitHub repo : https://github.com/biasmv/pv <https://github.com/biasmv/pv> Protein Viewer is used by SwissModel and RCSB. It has a very clear documentation <http://pv.readthedocs.org/en/latest/intro.html>. Graphics are stylized but also really clear in their depiction. Common bio-molecular representations are available. Selections are based on javascript and a JSON syntax. - Chemdoodle web components Examples <https://web.chemdoodle.com/demos/iza-zeolite-explorer/> Handles bimolecular representations and has some capabilities to handle cif files and generate multiple cells. Viewer canvases can be linked to a range of different widgets (spectrum display, 2D formula, etc…). Selection and display is based on the manipulation of javascript objects. - GLmol http://webglmol.osdn.jp/index-en.html <http://webglmol.osdn.jp/index-en.html> might have been the first WebGL viewer available. Some of its code has been used in the JSmol WebGL front end experiment. Active development has apparently ceased. I have found some references to other viewers <https://www.snip2code.com/Snippet/579547/WebGL-based-protein-Viewers> in an informative page written by another Jmol contributor, Andreas Prlic To my knowledge, JSmol is the only one with such advanced computing capabilities (secondary structure determination, hydrogen & h-bonds calculation, molecular minimization, partial charges, electrostatic potential, etc…), displaying versatility (bio/geo/nano/chemistry, file formats diversity and oddities), and user interaction openness (picking, building, computing…). All these viewers seem more reactive to user interaction (at least on my 6 years old laptop), even with high rendering quality settings. My understanding is that WebGL is the reason for this improvement (it might also be some other software complexity related concerns, I realize that I am not comparing the same things). I also understand that there is no plan for a development of Jsmol WebGL capabilities at the moment. Theoretically speaking, is it nonetheless feasible to harness JSmol capabilities to one of these viewers, in other words having JSmol doing all the computation while another library is doing all the GUI related business ? -Paul
------------------------------------------------------------------------------
_______________________________________________ Jmol-users mailing list Jmol-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/jmol-users