Russ741 / molecule-visualizer

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Molecule Visualizer

A 3D visualizer for PDB format molecular structures.

The live demo can be seen here.

A rendering of a proline molecule

How To Use

The camera controls follow the OrbitControls conventions (see this page for details) and can be controlled with combinations of mouse, keyboard (including ctrl keys) and one/two finger touch.

Selecting a Molecule

The molecule shown by default is human insulin.
To select a different molecule:

  • Obtain the PDB file for the desired molecule (for example, by searching the RCSB Protein Data Bank)
  • Copy a single model (see Known Limitations) from the file's contents
  • Paste the single model into the live demo's upper form
  • Press the "Click to update scene" button.

Non-default Chemical Components

To provide bond data for chemical components other than the basic amino acids (which are already provided by default):

  • Go to the PDB HET Dictionary
  • Select the component by three-character name (e.g. https://files.wwpdb.org/pub/pdb/data/monomers/HPR)
  • Copy the contents of the selected file
  • Append it to the live demo's lower form
    • Be careful not to erase other component definitions that are still needed
  • Repeat for other component definitions
  • When all component definitions have been added, press the "Click to update scene" button.

Known Limitations

  • Does not automatically load chemical component definitions or flag definitions that are missing
  • Does not gracefully handle multiple models (behavior is undefined, but will likely superimpose both)
  • Does not attempt to infer the locations of hydrogen atoms that are present in the chemical components but not the PDB file
  • Does not label, color code, or otherwise distinguish the constituent atoms/residues/chains
  • Does not specially handle HELIX or SHEET annotations
  • May render all alternate locations of a given atom concurrently, rather than filtering to a single altLoc
  • Does not currently parse mmCIF for molecules or components
  • Does not currently support other camera control schemes

About


Languages

Language:HTML 87.8%Language:JavaScript 12.2%