Several defficiencies in Marvin JS that should be remedied

User 53611d53ae

29-09-2016 20:30:52

Dear ChemAxon,


After many years of using MarvinSketch for drawing chemical structures, I am just beginning to experiment with Marvin JS.


I encountered several deficiencies that I think are serious hindrances in adopting this platform, and I would like to list them here, hoping that the programmers may consider addressing them. I think that at least a few of those should be straight forward to implement.


1. There are no flip functions! You can mirror a structure, but if you do that, all stereo information is reversed. When manipulating glucosyl groups, one of the most common actions is to flip the structure so it could be connected properly to a polysaccharide. This cannot be done currently. Please add commands for flipping structure both vertically and horizontally.


2. Pasting structures: When you copy and paste a structure in the Java applet, the structure is pasted in the white space surrounding the structure, so it is easy to manipulate it before dragging it to the proper place. In Marvin JS, the structure is pasted right on top of the existing structure, making it extremely difficult to to drag it away so it could be manipulated. In most cases, you would inadvertently click on an atom that does not belong to the pasted portion, losing the active selection, and requiring you to undo the entire operation and try again.


3. Selecting atoms for copying: Sometimes it is impossible to select the full substructure you want to copy in a single mouse operation, because a rectangle surrounding it will includes additional atoms that you do not want to copy. In the Java applet, you can modify the initial selection by holding the shift key and clicking the atoms to select/unselect them. When done, you can copy and paste the highlighted atoms in one unit. In Marvin JS, on the other hand, it seems to work quite differently. If you modify an initial selection by holding down shift and clicking atoms, the result appears the same (all desired atoms are highlighted), but when you copy and paste it, the software treats this selection as several unconnected substructures, and they are pasted without the bonds that connect them. I may be missing something here, and if I do, I will appreciate learning how it is done. But if indeed this is currently impossible, it is a major deficiency.


4. Template library: I admit I have not researched that thoroughly, so I may be missing existing functionality. In the Java applet, it is easy to open a compound and drag it down to make it a custom template. An extremely useful feature when one needs to add complicated moieties such as Coenzyme A.  Marvin JS does have built-in templates, but I haven't seen discussion of how one could add their own custom template there.


I think this is plenty for now, so I will stop here :).  Thanks for all your support, and for making the effort to move Marvin to the post-Java applet era.


Ron

ChemAxon f052bdfe3c

30-09-2016 11:46:10

Hi Ron,


Thank you for your interest in Marvin JS and for your suggestions. 


#1 we have not developed this functionality yet. Thank you for your request.


#2 You are right, we need to make pasting structures more comfortable for the users.


#3 Marvin JS gives you the advantage that you can select bonds separately which is useful in many cases, but to be able to provide this functionality and remain consistent, it resulted that you need to click on the bonds as well if you want to add them to the selection with holding the SHIFT key. Or you can simple use rectangle or freehand selection together with the SHIFT key if you want to add a part of the molecule not only the atoms.


#4 From a browser component it is hard to support custom templates, since it would require either saving this information to the user computer   (that we want to avoid due to security reasons) or somehow we should store this information on the web server which host our application. However, we implemented this feature from the server side. The one who embed Marvin JS  to his application can add custom templates to their user. Please see the template related examples under customisation menu: https://marvinjs-demo.chemaxon.com/latest/examples/index.html  


I hope you find this information useful.


Best regards,


Efi