ChemDoodle Web Components version 4.2 has been released. Contact us for custom development, integration and support to take advantage of this technology for your business.

In addition to the update, 3 new powerful demos are provided:

  1. CDX Viewer – Convert ChemDraw files to PDF. This demo shows off the power of iChemLabs cloud services that access the ChemDoodle Java API.
  2. Memory Game – Not everything created with the ChemDoodle Web Components library has to be highly technical. This demo simply puts a chemical twist on the classic memory game. Anything you can think of you can create with ChemDoodle Web Components.
  3. PDB Ribbons – Search the Protein Data Bank and load ribbon models. View ribbon models for proteins and nucleic acid based macromolecules. The graphics of the ribbon models can be customized.

Executive Summary

This update provides significant new WebGL features. The PDBInterpreter class will now parse residue data and generate ribbon models for WebGL scenes. Support is provided for both proteins and nucleic acid based macromolecules. Many options are provided, such as cartoon based graphics and different residue color sets. Additional WebGL features include higher bond order rendering and efficiency improvements. The mobile touch event and gesture system has been upgraded to support more advanced gestures, such as multiple-taps and multiple-touch drags.


  1. The PDBInterpreter class will now parse residue data from files and generate ribbons for rendering. The ribbons can be continuous or cartoonized. Both “Amino” and “Shapely” residue color sets are provided. All colors for ribbons and cartoon models can be customized. Both the front and back colors of ribbons can be customized.
  2. Added a new static HashMap, ChemDoodle.RESIDUE, that contains Residue data structures and associated information.
  3. Added a new function, ChemDoodle.iChemLabs.getOptimizedPDBStructure(), that will use iChemLabs services to download and parse a PDB file by id and return optimized structure and ribbon data. Using this function is magnitudes faster than printing the PDB file to a variable and parsing in Javascript.
  4. Added new VisualSpecifications.bonds_showBondOrders_3D, that when set to true, will render higher order bond orders in WebGL scenes. The higher order bonds will always orient themselves to face the camera.
  5. Added new VisualSpecifications.atoms_vdwMultiplier_3D specification, that will multiply to the van der Waals radius in WebGL scenes when vdW radii are used.
  6. Added higher level mobile gesture, _Canvas.multitouchmove, that will notify a Canvas when multiple fingers are moving.
  7. Added higher level mobile gesture, _Canvas.dbltap, that will notify a Canvas when a finger double-taps. If this is not implemented, an event is sent to the dblclick handler, if available.
  8. All ChemDoodle.iChemLabs calls now accept an optional parameter function, called errorback, that will be automatically called if any errors or warnings are thrown using iChemLabs services.


  1. Fixed issue for the PerspectiveCanvas, on mobile devices, where the y-axis scale would initially jump when doing a pinch gesture to scale the spectrum.
  2. Double tapping a PerspectiveCanvas on mobile devices will now reset its view.
  3. Two finger sliding on a PerspectiveCanvas on mobile devices will translate the spectrum view.
  4. The sketcher, on mobile devices, now reverses single-tap events if multiple fingers are detected.
  5. Fixed issue where plus and minus keys were not being recognized in Firefox/Opera.
  6. All Array appends based on “array[array.length] =” have been changed to array.push().
  7. Improved WebGL Ball and Stick rendering.
  8. Improved WebGL rendering efficiency.
  9. The default multiplier for reading PDB files is now 1.