Mini Map Aide
From Proteopedia
Line 19: | Line 19: | ||
The map must be in CCP4 format and must either cover the protein molecule or fill an entire unit cell. The program should work with most of the maps which are held online in the [[Protein Data Bank]]. The steps of calculating an electron density map on a computer with the [https://www.ccp4.ac.uk/ CCP4 suite] installed are outlined in the online help provided at the [https://minimapai.de/minimaphelp.html mini map aide website]. If the reflection data are available in MTZ format, these may be uploaded to the mini map aide website for conversion to a map file which can then be downloaded to your device and then loaded into the program for display. I am very grateful to Marcin Wodjyr (CCP4/Global Phasing) for allowing me to use the program [https://gemmi.readthedocs.io/en/latest/utils.html#sf2map sf2map] from the [https://joss.theoj.org/papers/10.21105/joss.04200 gemmi suite] on the Mini Map Aide server for this purpose. | The map must be in CCP4 format and must either cover the protein molecule or fill an entire unit cell. The program should work with most of the maps which are held online in the [[Protein Data Bank]]. The steps of calculating an electron density map on a computer with the [https://www.ccp4.ac.uk/ CCP4 suite] installed are outlined in the online help provided at the [https://minimapai.de/minimaphelp.html mini map aide website]. If the reflection data are available in MTZ format, these may be uploaded to the mini map aide website for conversion to a map file which can then be downloaded to your device and then loaded into the program for display. I am very grateful to Marcin Wodjyr (CCP4/Global Phasing) for allowing me to use the program [https://gemmi.readthedocs.io/en/latest/utils.html#sf2map sf2map] from the [https://joss.theoj.org/papers/10.21105/joss.04200 gemmi suite] on the Mini Map Aide server for this purpose. | ||
+ | Once a molecule and its map have been loaded, the program automatically rolls the structure in 3D to aid viewing, but the user can switch this to a swipe-driven rotation mode with the "Scroll" menu button. The same button switches back to "Roll" mode when required. The program will automatically centre on the Cα atom of the first amino acid in the protein and the user can step from one residue to the next with the "Next residue" button. It may also help to use the "Side chain" button which centres the display on one of the outer side chain atoms. The same button allows the user to switch back to centring on the "Main chain" Cα atom. The program has a "Go to" menu box in which the user can enter a residue number and chain ID to look at a specific residue or subunit of interest. Once the residue number is entered, the "Update" button must be clicked so redraw the display. The contour level of the map can be changed (positive values are drawn in blue, negative red) and there is a "Symmetry" option to draw the symmetry-related molecules. As for the "Go to" button, these last two options also require the "Update" button to be clicked in order for their changes to take effect. The first time the "Symmetry" checkbox is ticked, there can be a delay in redrawing the picture as the algorithm for finding all of the crystal contacts is a bit slow. Once this initial search is complete, subsequent redraws should be much quicker. Most of these options should work for polynucleotides but these have not been tested as much as polypeptides. Another possible shortcoming is that Mini Map Aide currently does not issue many warnings or error messages - the main take home message being that if something doesn't work, simply try changing one of the options or reload the webpage and try again. | ||
+ | Mini Map Aide attempts to mimic a tiny fraction of FRODO's protein rebuilding capabilities, albeit in a rather different way to be more amenable for use with mobile devices. On the dark display window there is a "Move" button which should always be active. When this is clicked or touched, the atoms in the residue which is currently at the centre of the display can be moved by small swipes on the screen. The moveable atoms are highlighted in a pale purple colour and a particular atom can be moved by touching it and gently swiping in one direction. The purple blob for this atom will swell for an instant to indicate that is has been selected. When the atoms have been moved to the desired locations, the geometry can be regularised and the bonds redrawn by clicking the "Tidy" button. The changes to the structure can then either be undone or saved as a new PDB file with the "Undo" and "Save" buttons, respectively. | ||
<table class="wikitable" align="right"><tr><td width="150"> | <table class="wikitable" align="right"><tr><td width="150"> |
Revision as of 21:32, 2 December 2024
The following article was written by Jonathan Cooper, Professor Emeritus at University College, London. (Eric Martz simply put it into Proteopedia, but had no authorship role.)
Mini map aide in use showing a threonine residue at the centre of the screen with a symmetry-related molecule, shown with its bonds drawn green. The bonds of main molecule are coloured dark yellow and individual atoms are coloured according to type, red for oxygen and blue for nitrogen. |
Mini Map Aide is a mobile phone website application for visualizing atomic models and electron density maps. It emulates a small number of the functions of FRODO. It is coded in Lua, simply because that was the language that was stored in my head at the time of deciding to do this. Mini Map Aide uses a JavaScript virtual machine Fengari so that it runs as a web-browser script and can use various javascript libraries such as math.js and, most importantly, the 3D graphics library three.js. Quoting from Wikipedia (the free encyclopedia):
"Three.js is a cross-browser JavaScript library and application programming interface (API) used to create and display animated 3D computer graphics in a web browser using WebGL."
WebGL uses OpenGL (Open Graphics Library) which was originally developed by Silicon Graphics in 1991 (see Wikipedia again), when a few of the last remaining PS2s were still in use, although many had been superseded by the higher powered PS300 and PS390 from E&S. I always wanted to dabble in OpenGL, but, as a non-programmer, I was put off several times by the hundreds of lines of code required to do relatively small 3D graphics tasks. Enter three.js which, thankfully, simplifies the task to the point where my interest was finally piqued into some action.
Mini Map Aide is meant to be a completely minimal electron density map viewing aid that works on a residue-by-residue basis and could even be used by experimentalists for checking a structure in the final refinement rounds if the user has no computer access for some reason. To this end the bad regions could be recorded, e.g. by taking screen-shots, for later attention with a dedicated PC-based molecular graphics program, such as Coot. Despite its limitations, the aim is for mini map aide to be useful in research or as a teaching aid! All of the display calculations are done by a client-side script running in the user's web browser and neither the structure nor the map need to be uploaded to the server. They must, of course, be transferred to the phone beforehand by one or other means!
The map must be in CCP4 format and must either cover the protein molecule or fill an entire unit cell. The program should work with most of the maps which are held online in the Protein Data Bank. The steps of calculating an electron density map on a computer with the CCP4 suite installed are outlined in the online help provided at the mini map aide website. If the reflection data are available in MTZ format, these may be uploaded to the mini map aide website for conversion to a map file which can then be downloaded to your device and then loaded into the program for display. I am very grateful to Marcin Wodjyr (CCP4/Global Phasing) for allowing me to use the program sf2map from the gemmi suite on the Mini Map Aide server for this purpose.
Once a molecule and its map have been loaded, the program automatically rolls the structure in 3D to aid viewing, but the user can switch this to a swipe-driven rotation mode with the "Scroll" menu button. The same button switches back to "Roll" mode when required. The program will automatically centre on the Cα atom of the first amino acid in the protein and the user can step from one residue to the next with the "Next residue" button. It may also help to use the "Side chain" button which centres the display on one of the outer side chain atoms. The same button allows the user to switch back to centring on the "Main chain" Cα atom. The program has a "Go to" menu box in which the user can enter a residue number and chain ID to look at a specific residue or subunit of interest. Once the residue number is entered, the "Update" button must be clicked so redraw the display. The contour level of the map can be changed (positive values are drawn in blue, negative red) and there is a "Symmetry" option to draw the symmetry-related molecules. As for the "Go to" button, these last two options also require the "Update" button to be clicked in order for their changes to take effect. The first time the "Symmetry" checkbox is ticked, there can be a delay in redrawing the picture as the algorithm for finding all of the crystal contacts is a bit slow. Once this initial search is complete, subsequent redraws should be much quicker. Most of these options should work for polynucleotides but these have not been tested as much as polypeptides. Another possible shortcoming is that Mini Map Aide currently does not issue many warnings or error messages - the main take home message being that if something doesn't work, simply try changing one of the options or reload the webpage and try again.
Mini Map Aide attempts to mimic a tiny fraction of FRODO's protein rebuilding capabilities, albeit in a rather different way to be more amenable for use with mobile devices. On the dark display window there is a "Move" button which should always be active. When this is clicked or touched, the atoms in the residue which is currently at the centre of the display can be moved by small swipes on the screen. The moveable atoms are highlighted in a pale purple colour and a particular atom can be moved by touching it and gently swiping in one direction. The purple blob for this atom will swell for an instant to indicate that is has been selected. When the atoms have been moved to the desired locations, the geometry can be regularised and the bonds redrawn by clicking the "Tidy" button. The changes to the structure can then either be undone or saved as a new PDB file with the "Undo" and "Save" buttons, respectively.
Mini map aide in use showing a threonine residue at the centre of the screen with a symmetry-related molecule, shown with its bonds drawn green. The bonds of main molecule are coloured dark yellow and individual atoms are coloured according to type, red for oxygen and blue for nitrogen. |
See Also
- Molecular visualization in the 1980s where FRODO is described.
- History of Macromolecular Visualization
- X-ray crystallography
- Electron density maps
Content Attribution
This article was written by Jonathan Cooper, Professor Emeritus at University College, London. (Eric Martz simply put it into Proteopedia, but had no authorship role.)