From: tohel <to...@us...> - 2005-04-29 09:28:21
|
Update of /cvsroot/cdk/cdk/src/org/openscience/cdk/applications/jchempaint In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv6774/src/org/openscience/cdk/applications/jchempaint Modified Files: JChemPaintPanel.java Log Message: added method for scaling and centering structure in JChemPaintPanel Index: JChemPaintPanel.java =================================================================== RCS file: /cvsroot/cdk/cdk/src/org/openscience/cdk/applications/jchempaint/JChemPaintPanel.java,v retrieving revision 1.24 retrieving revision 1.25 diff -u -r1.24 -r1.25 --- JChemPaintPanel.java 28 Apr 2005 16:18:56 -0000 1.24 +++ JChemPaintPanel.java 29 Apr 2005 09:28:03 -0000 1.25 @@ -229,7 +229,7 @@ /** * Sets the file currently used for saving this Panel. * - * @param value The new isAlreadyAFile value + * @param value The new isAlreadyAFile value */ public void setIsAlreadyAFile(File value) { isAlreadyAFile = value; @@ -582,6 +582,21 @@ /** + * Scales and centers the structure in the dimensions of the DrawingPanel. + * + * @param chemModel The cheModel of the structure to be scaled and centered. + */ + void scaleAndCenterMolecule(ChemModel chemModel) { + JChemPaintModel jcpm = getJChemPaintModel(); + Renderer2DModel rendererModel = jcpm.getRendererModel(); + AtomContainer ac = ChemModelManipulator.getAllInOneContainer(chemModel); + GeometryTools.translateAllPositive(ac); + double scaleFactor = GeometryTools.getScaleFactor(ac, rendererModel.getBondLength()); + GeometryTools.scaleMolecule(ac, scaleFactor); + GeometryTools.center(ac, drawingPanel.getSize()); + } + + /** * Description of the Method * * @param chemModel Description of the Parameter @@ -608,6 +623,7 @@ return; } JChemPaintModel jcpm = new JChemPaintModel(chemModel); + scaleAndCenterMolecule(chemModel); lastUsedJCPP = this; if (isEmbedded()) { if (showWarning() == JOptionPane.YES_OPTION) { |