Can you point us (well, John particularly) to the SMSD code you are using?
I think if he can find the time, he can make some suggestions on how to
replace it with more modern code.

Egon

On Sat, 23 Sept 2023 at 12:55, Tim Dudgeon <tdudgeon...@gmail.com> wrote:

> Sorry for the late reply. I've been distracted.
> Sorry, I meant DepictionGenerator. CDKMolDepict is my class that's
> running this! Egon found it correctly.
>
> Regarding the version, yes, this is old code, and I can't remember all the
> details.
> I'm not able to update to the latest as I have a dependency on the
> deprecated org.openscience.cdk:cdk-smsd module.
> I did have a discussion some time ago with Egon about removing the
> dependency on the deprecated code, but we never got that resolved.
> So this means that I can only update to version 2.5. which I've now done.
>
> I still find problems with that version. For some reason that I can't
> recall I'm using:
>
> StructureDiagramGenerator g = new StructureDiagramGenerator();
> g.generateCoordinates(mol);
>
> to do the layout prior to calling DepictionGenerator().depict(mol)
>
> This is causing me problems when handling 2D or 3D molfiles.
> I find I can work around it by doing IAtomContainer -> SMILES ->
> IAtomContainer, which works for now.
> I'll need to look more deeply at the code to work out better options.
> There's a lot going on like MCS alignment and highlighting.
>
> Thanks for your help.
>
>
> On Sat, Sep 23, 2023 at 10:45 AM Egon Willighagen <
> egon.willigha...@gmail.com> wrote:
>
>> If you have that discussion here, I can update
>> https://egonw.github.io/cdkbook/migration.html accordingly.
>>
>> Egon
>>
>> On Sat, 23 Sept 2023 at 11:43, John Mayfield <john.wilkinson...@gmail.com>
>> wrote:
>>
>>> Hi Tim,
>>>
>>> It looks like you're using 5 year old CDK 2.2, is that correct?
>>>
>>> build.gradle:
>>> > project.ext.set('cdkVersion', '2.2')
>>>
>>> It's likely just updating will fix the issue. It should be relatively
>>> seamless but let me know if there are any issues and I'll tell you how to
>>> fix it.
>>>
>>> On Sat, 23 Sept 2023 at 06:38, Egon Willighagen <
>>> egon.willigha...@gmail.com> wrote:
>>>
>>>>
>>>> Tim,
>>>>
>>>> I guess you are referring to
>>>> https://github.com/InformaticsMatters/squonk/blob/master/components/cdk-lib/src/main/groovy/org/squonk/cdk/io/CDKMolDepict.java
>>>>
>>>> I also looked at the molfile reading in CDKMoleculeIOUtils and it looks
>>>> correct to me, but the hydrogen adding may be a conflicting issue here.
>>>> What is the actual exception (stacktrace) you get?
>>>>
>>>> Like John set, removing the 3D coordinates should not be needed (the
>>>> CDK is designed to allow having both of them in parallel), but if you have
>>>> to, run .setPoint3d(null) on each atom. That should do the trick.
>>>>
>>>> Egon
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> On Wed, 20 Sept 2023 at 12:05, John Mayfield <
>>>> john.wilkinson...@gmail.com> wrote:
>>>>
>>>>> I have no idea what CDKMolDepict is, a Knime thing?
>>>>>
>>>>> It's probably just not being updated. Testing the following on
>>>>> master/main works as expected (DepictionGenerator computes the 2D as
>>>>> needed, no need to clear the 3D):
>>>>>
>>>>> public static void main(String[] args) {
>>>>>     String molfile = "\n" +
>>>>>             "  MJ231200                      \n" +
>>>>>             "\n" +
>>>>>             "  5  4  0  0  1  0  0  0  0  0999 V2000\n" +
>>>>>             "    0.9718   -0.1139    0.6193 O   0  0  0  0  0  0  0  0
>>>>>  0  0  0  0\n" +
>>>>>             "    0.9448    0.0189   -0.2285 S   0  0  0  0  0  0  0  0
>>>>>  0  0  0  0\n" +
>>>>>             "   -0.0042    0.1584   -0.4371 C   0  0  0  0  0  0  0  0
>>>>>  0  0  0  0\n" +
>>>>>             "   -0.2882    0.8589   -0.1053 C   0  0  0  0  0  0  0  0
>>>>>  0  0  0  0\n" +
>>>>>             "    1.1863   -0.8418   -0.6272 C   0  0  0  0  0  0  0  0
>>>>>  0  0  0  0\n" +
>>>>>             "  1  2  2  0  0  0  0\n" +
>>>>>             "  2  3  1  0  0  0  0\n" +
>>>>>             "  3  4  1  0  0  0  0\n" +
>>>>>             "  2  5  1  0  0  0  0\n" +
>>>>>             "M  END\n";
>>>>>     IChemObjectBuilder bldr = SilentChemObjectBuilder.getInstance();
>>>>>     try (MDLV2000Reader mdlr = new MDLV2000Reader(new
>>>>> StringReader(molfile))) {
>>>>>         IAtomContainer mol = mdlr.read(bldr.newAtomContainer());
>>>>>         new DepictionGenerator().depict(mol).writeTo("/tmp/tmp.svg");
>>>>>     } catch (IOException e) {
>>>>>         throw new RuntimeException(e);
>>>>>     } catch (CDKException e) {
>>>>>         throw new RuntimeException(e);
>>>>>     }
>>>>> }
>>>>>
>>>>> On Tue, 19 Sept 2023 at 18:15, Tim Dudgeon <tdudgeon...@gmail.com>
>>>>> wrote:
>>>>>
>>>>>> I'm using StructureDiagramGenerator.generateCoordinates() to create a
>>>>>> layout before using CDKMolDepict to generate images for molecules, and 
>>>>>> I've
>>>>>> hit a problem when using molecules that already have 3D coordinates as
>>>>>> StructureDiagramGenerator.generateCoordinates() does not generate a new 
>>>>>> 2D
>>>>>> layout if 3D coordinates are present, and passing in a molecule with 3D
>>>>>> coordinates seems to make CDKMolDepict crash badly.
>>>>>>
>>>>>> So, what is the best way to clear the 3D coordinates for a molecule,
>>>>>> so that StructureDiagramGenerator.generateCoordinates() can do its job?
>>>>>> _______________________________________________
>>>>>> Cdk-user mailing list
>>>>>> Cdk-user@lists.sourceforge.net
>>>>>> https://lists.sourceforge.net/lists/listinfo/cdk-user
>>>>>>
>>>>> _______________________________________________
>>>>> Cdk-user mailing list
>>>>> Cdk-user@lists.sourceforge.net
>>>>> https://lists.sourceforge.net/lists/listinfo/cdk-user
>>>>>
>>>>
>>>>
>>>> --
>>>> Inherited disorders can be hard to interpret when multiple biomarkers
>>>> are involved. A network approach can help bring insight:
>>>> https://doi.org/10.1186/s13023-023-02683-9
>>>>
>>>> --
>>>> E.L. Willighagen
>>>> Department of Bioinformatics - BiGCaT
>>>> Maastricht University (http://www.bigcat.unimaas.nl/)
>>>> Blog: https://chem-bla-ics.blogspot.com/
>>>> Mastodon: https://scholar.social/@egonw
>>>> PubList: https://orcid.org/0000-0001-7542-0286
>>>>
>>>
>>
>> --
>> Inherited disorders can be hard to interpret when multiple biomarkers are
>> involved. A network approach can help bring insight:
>> https://doi.org/10.1186/s13023-023-02683-9
>>
>> --
>> E.L. Willighagen
>> Department of Bioinformatics - BiGCaT
>> Maastricht University (http://www.bigcat.unimaas.nl/)
>> Blog: https://chem-bla-ics.blogspot.com/
>> Mastodon: https://scholar.social/@egonw
>> PubList: https://orcid.org/0000-0001-7542-0286
>>
>

-- 
Inherited disorders can be hard to interpret when multiple biomarkers are
involved. A network approach can help bring insight:
https://doi.org/10.1186/s13023-023-02683-9

--
E.L. Willighagen
Department of Bioinformatics - BiGCaT
Maastricht University (http://www.bigcat.unimaas.nl/)
Blog: https://chem-bla-ics.blogspot.com/
Mastodon: https://scholar.social/@egonw
PubList: https://orcid.org/0000-0001-7542-0286
_______________________________________________
Cdk-user mailing list
Cdk-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cdk-user

Reply via email to