code: private IAtom setAtom(IAtom atom, String ID) throws NoSuchAtomTypeException {
          IAtomType at = null;
          String key = "";
          List<?> data = null;
          Double value = null;
  
          at = getAtomType(ID);
          if (atom.getSymbol() == null) {
              atom.setSymbol(at.getSymbol());
          }
          atom.setAtomTypeName(at.getAtomTypeName());
          atom.setFormalNeighbourCount(at.getFormalNeighbourCount());
          key = "vdw" + ID;
          data = (List) parameterSet.get(key);
          value = (Double) data.get(0);
          key = "charge" + ID;
          if (parameterSet.containsKey(key)) {
              data = (List) parameterSet.get(key);
              value = (Double) data.get(0);
              atom.setCharge(value.doubleValue());
          }
          Object color = at.getProperty("org.openscience.cdk.renderer.color");
          if (color != null) {
              atom.setProperty("org.openscience.cdk.renderer.color", color);
          }
          if (at.getAtomicNumber() != 0) {
              atom.setAtomicNumber(at.getAtomicNumber());
          }
          if (at.getExactMass() > 0.0) {
              atom.setExactMass(at.getExactMass());
          }
          return atom;
      }
docs: Assigns an atom type to an atom
  
  @param  atom  The atom to be aasigned
  @param  ID    the atom type id
  @exception  NoSuchAtomTypeException  atomType is not known
  @return       the assigned atom