Yes you need to process the structures separately. It’s not that there is a good but more likely there is non-covalent bonding - you can see how toolkits interpret - [Na+].[Cl-]

There might be some code in a down stream product which lays out multiple molecules and have CC’ed in cdk-devel list.


On 11 Nov 2013, at 15:26, Christophe Marcourt <> wrote:

Ok, now it seems everything is working except that sometimes I have a CDKException due to disconnected molecule. So I'm using ConnectivityChecker.partitionIntoMolecules() method but I have a set of IAtomContainer. 
Do I have to process all of the IAtomContainer or is there only one which represents the good structure ? And how to get the good one ? ;-)
Thank you.

Christophe Marcourt

On Mon, Nov 11, 2013 at 3:49 PM, Christophe Marcourt <> wrote:
Ok, I already know this, so nothing more.
Fair enough.
Thank you for your time.

Christophe Marcourt

On Mon, Nov 11, 2013 at 3:48 PM, John May <> wrote:
The JavaDoc has some… here’s how to create an IAtomContainer from an InChI string.

and here shows generating coordinates


On 11 Nov 2013, at 14:29, Christophe Marcourt <> wrote:

Thank you very much.
Is there a documentation which describes how to get a structure from an inchi using cdk java API ?

Christophe Marcourt

On Mon, Nov 11, 2013 at 3:25 PM, John May <> wrote:
Hi Christophe,

The InChI stores coordinates in the AuxInfo and without that the IUPAC binary (called by the CDK) won’t set structure coordinates. To obtain a depiction you need to generate coordinates from scratch. The 2D coordinates are generated using the StructureDiagramGenerator whilst 3D coordinates are generated with ModelBuilder3D. It should be noted that neither method currently respects stereochemistry although that information is present.


On 11 Nov 2013, at 12:59, Christophe Marcourt <> wrote:

Hello all,

I'm using cdk-inchi packages to turn an Inchi code to a strcuture.
I used the written code from the InChIToStructure javadoc.
It works fine but as the javadoc said "The generated IAtomContainer will have all 2D and 3D coordinates set to 0.0" !
When I used chemspider web services, it returns with a good structure.
So how can one use InChIToStructure to have the real structure ? And not only with 0 in it...

Christophe Marcourt
November Webinars for C, C++, Fortran Developers
Accelerate application performance with scalable programming models. Explore
techniques for threading, error checking, porting, and tuning. Get the most
from the latest Intel processors and coprocessors. See abstracts and register
Cdk-user mailing list