ChemDoodle Web Components 4.5.0 has been released. This update provides a few fixes and additions to the 2D components and several new features for the 3D components, including more coloring options for proteins, protein backbone rendering, star geometries, primitive line rendering, and the groundworks for our surfaces system, with dot and solid molecular surfaces.

The demos on the website have been updated, with all the new features available to the PDB Ribbons demo.


  1. Molecular surfaces can now be displayed. Currently only very basic surfaces can be rendered. The new ChemDoodle.informatics.MolecularSurfaceGenerator class will generate surfaces given parameters for the atomic radii set to use, probe diameter and the resolution of the surface mesh. Visual specifications for surfaces are provided. Currently, only the "Dot" and "Solid" styles are provided. A "Mesh" style, as well as transparency, gradient coloring options, and the handling of Cube files will be provided in future releases.
  2. Added a new variable to the Atom class, altLabel, which does not need to be chemically significant and will be displayed instead of the element symbol for that atom. It will adhere to the same visual specifications that the element symbol adheres to.
  3. Primitive lines can now be rendered for bonds. A new 3D representation "Line" is provided.
  4. Alpha carbon backbones can now be displayed for proteins. You can control the thickness and color with visual specifications.
  5. A new visual specification, macro_colorByChain, will color a PDB file by chain by iterating through HSL colorspace.
  6. A new visual specification, proteins_usePolarityColors, will color amino acids in a PDB file by polarity.
  7. Star geometries can now be rendered for non-bonded atoms. This is useful for rendering ions/metals and for displaying water oxygens in crowded PDB files. Enable it with the visual specification, atoms_nonBondedAsStars_3D.
  8. A new visual specification, atoms_displayAllCarbonLabels_2D, to render all carbon labels. This is useful for rendering Lewis dot structures.


  1. Fixed bug that prevented multiple SketcherCanvas instances from being declared on the same page
  2. Fixed bug where the help button on the SketcherCanvas did not function on mobile devices.
  3. Fixed bug with the SketcherCanvas where toolbars would appear cutoff on the sides of the screen if the sketcher was to close to the edges of the page.
  4. Added support for pixel ratios in WebGL canvases.