|
From: Egon W. <ego...@gm...> - 2013-05-27 04:48:10
|
Hi all, I am in the preparation of releasing CDK-JChemPaint patch 38, which is rebased on CDK 1.4.8... for all the new people, "CDK-JChemPaint" is the renderer/controler stack patches and not the JChemPaint applet. CDK-JChemPaint is being back-integrated into the CDK, but not all modules are ready yet. The current status of missing unit tests, JavaDoc, etc can be found here: http://pele.farmbio.uu.se/nightly-jcp/ Also note that it has a rendersvg module for which there still is a separate patch in the CDK tracker too. Help with further cleaning up this code is most welcome. I will see what patches from the Bioclipse tree I can pull in as soon as possible... but here too, rebasing patches on the latest CDK-JChemPaint patches are welcome too. Please also note that I have not been able to find time either to look at the JChemPaint release branch. As you know, these branches have severely branched, and identification of features that could be ported to CDK-JChemPaint is still an open task. Ralf has done excellent work in this area already, for which I am very grateful! Next up for me is putting release 38 on SourceForge, updating my "Groovy JChemPaint" code examples [0], create same examples with the controller functionality, and porting the patches to master. There are other things to do, like updating applications/plugins that use JChemPaint, work on the template stack, etc, etc At a design level, these things are still open, and your ideas/work on that is also welcome: 1. fixing the margin/zoom/scale stack The practical issue of getting font sizes right caused this part to be partially implemented. The idea was to fully split world and screen coordinates. Normally the zoom is 1.0, causing the full structure to take up the full image size, expect for the set margins, where the scale exactly matches the coordinate size different. So, if the world size (1D) was 10 angstrom, and the image size 1000, then the scale would be 100. The zoom can then, afterwards, be used to zoom in and out, but when set to 1.0 again, the structure would once again fill the image. 2. two pass drawing Drawing bonds requires knowledge about the drawn atom labels: we do not want to bonds to be drawn where the labels are. This requires a two-pass system, to solve circular dependencies. Here too, btw, the font and thus real-world label size is one troubling part. Egon 0.https://github.com/egonw/groovy-jcp -- Dr E.L. Willighagen Postdoctoral Researcher Department of Bioinformatics - BiGCaT Maastricht University (http://www.bigcat.unimaas.nl/) Homepage: http://egonw.github.com/ LinkedIn: http://se.linkedin.com/in/egonw Blog: http://chem-bla-ics.blogspot.com/ PubList: http://www.citeulike.org/user/egonw/tag/papers |