code: @Deprecated
      public void generateExperimentalCoordinates(Vector2d firstBondVector) throws CDKException {
          // first make a shallow copy: Atom/Bond references are kept
          IAtomContainer original = molecule;
          IAtomContainer shallowCopy = molecule.getBuilder().newInstance(IAtomContainer.class, molecule);
          // delete single-bonded H's from
          //IAtom[] atoms = shallowCopy.getAtoms();
          for (IAtom curAtom : shallowCopy.atoms()) {
              if (curAtom.getSymbol().equals("H")) {
                  if (shallowCopy.getConnectedBondsCount(curAtom) < 2) {
                      shallowCopy.removeAtom(curAtom);
                      curAtom.setPoint2d(null);
                  }
              }
          }
          // do layout on the shallow copy
          molecule = shallowCopy;
          generateCoordinates(firstBondVector);
          double bondLength = GeometryUtil.getBondLengthAverage(molecule);
          // ok, now create the coordinates for the hydrogens
          HydrogenPlacer hPlacer = new HydrogenPlacer();
          molecule = original;
          hPlacer.placeHydrogens2D(molecule, bondLength);
      }
docs: Generates 2D coordinates on the non-hydrogen skeleton, after which
  coordinates for the hydrogens are calculated.
  
  @param firstBondVector the vector of the first bond to lay out
  @throws CDKException if an error occurs
  @deprecated use {@link #generateCoordinates()}