From: <gil...@us...> - 2008-12-01 12:02:39
|
Revision: 13405 http://cdk.svn.sourceforge.net/cdk/?rev=13405&view=rev Author: gilleain Date: 2008-12-01 12:02:35 +0000 (Mon, 01 Dec 2008) Log Message: ----------- Compact mode rendering support. Modified Paths: -------------- cdk/branches/jchempaint-primary/src/main/org/openscience/cdk/renderer/generators/BasicAtomGenerator.java Modified: cdk/branches/jchempaint-primary/src/main/org/openscience/cdk/renderer/generators/BasicAtomGenerator.java =================================================================== --- cdk/branches/jchempaint-primary/src/main/org/openscience/cdk/renderer/generators/BasicAtomGenerator.java 2008-12-01 11:46:35 UTC (rev 13404) +++ cdk/branches/jchempaint-primary/src/main/org/openscience/cdk/renderer/generators/BasicAtomGenerator.java 2008-12-01 12:02:35 UTC (rev 13405) @@ -22,6 +22,8 @@ import java.awt.Color; +import javax.vecmath.Point2d; + import org.openscience.cdk.geometry.GeometryTools; import org.openscience.cdk.interfaces.IAtom; import org.openscience.cdk.interfaces.IAtomContainer; @@ -29,6 +31,7 @@ import org.openscience.cdk.renderer.elements.AtomSymbolElement; import org.openscience.cdk.renderer.elements.ElementGroup; import org.openscience.cdk.renderer.elements.IRenderingElement; +import org.openscience.cdk.renderer.elements.RectangleElement; import org.openscience.cdk.validate.ProblemMarker; /** @@ -36,7 +39,7 @@ */ public class BasicAtomGenerator implements IGenerator{ - protected Renderer2DModel model; + protected Renderer2DModel model; public BasicAtomGenerator(Renderer2DModel r2dm) { this.model = r2dm; @@ -56,21 +59,34 @@ public IRenderingElement generate(IAtomContainer ac, IAtom atom) { // FIXME: pseudoatom from paintAtom - if(atom == null) + if (atom == null || atom.getPoint2d() == null) return null; + if (isHydrogen(atom) && !this.model.getShowExplicitHydrogens()) { - return null;// don't draw hydrogen + // don't draw hydrogen + return null; } - if (isCarbon(atom)) { - if (!showCarbon(atom, ac)) { - return null;// draw carbon - } + if (isCarbon(atom) && !showCarbon(atom, ac)) { + // don't draw carbon + return null; } + if (this.model.getIsCompact()) { + return this.generateCompactElement(atom); + } + int alignment = GeometryTools.getBestAlignmentForLabelXY(ac, atom); return generateElements(atom, alignment); } + + public IRenderingElement generateCompactElement(IAtom atom) { + Point2d p = atom.getPoint2d(); + double r = 0.1; + double d = 2 * r; + return new RectangleElement( + p.x - r, p.y - r, d, d, true, this.getColorForAtom(atom)); + } public IRenderingElement generateElements(IAtom atom, int alignment) { return new AtomSymbolElement( This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <gil...@us...> - 2009-02-15 11:59:13
|
Revision: 14188 http://cdk.svn.sourceforge.net/cdk/?rev=14188&view=rev Author: gilleain Date: 2009-02-15 11:58:18 +0000 (Sun, 15 Feb 2009) Log Message: ----------- Guarantee rendering of IPseudoAtom labels, not their symbols. Modified Paths: -------------- cdk/branches/jchempaint-primary/src/main/org/openscience/cdk/renderer/generators/BasicAtomGenerator.java Modified: cdk/branches/jchempaint-primary/src/main/org/openscience/cdk/renderer/generators/BasicAtomGenerator.java =================================================================== --- cdk/branches/jchempaint-primary/src/main/org/openscience/cdk/renderer/generators/BasicAtomGenerator.java 2009-02-15 11:47:34 UTC (rev 14187) +++ cdk/branches/jchempaint-primary/src/main/org/openscience/cdk/renderer/generators/BasicAtomGenerator.java 2009-02-15 11:58:18 UTC (rev 14188) @@ -27,6 +27,7 @@ import org.openscience.cdk.geometry.GeometryTools; import org.openscience.cdk.interfaces.IAtom; import org.openscience.cdk.interfaces.IAtomContainer; +import org.openscience.cdk.interfaces.IPseudoAtom; import org.openscience.cdk.renderer.RendererModel; import org.openscience.cdk.renderer.RenderingParameters.AtomShape; import org.openscience.cdk.renderer.elements.AtomSymbolElement; @@ -95,10 +96,16 @@ public IRenderingElement generateElements( IAtom atom, int alignment, RendererModel model) { + String text; + if (atom instanceof IPseudoAtom) { + text = ((IPseudoAtom) atom).getLabel(); + } else { + text = atom.getSymbol(); + } return new AtomSymbolElement( atom.getPoint2d().x, atom.getPoint2d().y, - atom.getSymbol(), + text, atom.getFormalCharge(), atom.getHydrogenCount(), alignment, getColorForAtom(atom, model)); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <gog...@us...> - 2009-03-10 13:10:14
|
Revision: 14395 http://cdk.svn.sourceforge.net/cdk/?rev=14395&view=rev Author: goglepox Date: 2009-03-10 13:09:52 +0000 (Tue, 10 Mar 2009) Log Message: ----------- Only horizontal alignment for carbon Modified Paths: -------------- cdk/branches/jchempaint-primary/src/main/org/openscience/cdk/renderer/generators/BasicAtomGenerator.java Modified: cdk/branches/jchempaint-primary/src/main/org/openscience/cdk/renderer/generators/BasicAtomGenerator.java =================================================================== --- cdk/branches/jchempaint-primary/src/main/org/openscience/cdk/renderer/generators/BasicAtomGenerator.java 2009-03-10 13:08:57 UTC (rev 14394) +++ cdk/branches/jchempaint-primary/src/main/org/openscience/cdk/renderer/generators/BasicAtomGenerator.java 2009-03-10 13:09:52 UTC (rev 14395) @@ -76,7 +76,12 @@ return this.generateCompactElement(atom, model); } - int alignment = GeometryTools.getBestAlignmentForLabelXY(ac, atom); + int alignment=0; + if(isCarbon( atom )) + alignment = GeometryTools.getBestAlignmentForLabel(ac, atom); + else + alignment = GeometryTools.getBestAlignmentForLabelXY(ac, atom); + return generateElements(atom, alignment, model); } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <gil...@us...> - 2009-06-10 19:09:49
|
Revision: 14606 http://cdk.svn.sourceforge.net/cdk/?rev=14606&view=rev Author: gilleain Date: 2009-06-10 19:09:35 +0000 (Wed, 10 Jun 2009) Log Message: ----------- Removed an errant FIXME that is no longer relevant, as the PseudoElement has been handled for a while now. Modified Paths: -------------- cdk/branches/jchempaint-primary/src/main/org/openscience/cdk/renderer/generators/BasicAtomGenerator.java Modified: cdk/branches/jchempaint-primary/src/main/org/openscience/cdk/renderer/generators/BasicAtomGenerator.java =================================================================== --- cdk/branches/jchempaint-primary/src/main/org/openscience/cdk/renderer/generators/BasicAtomGenerator.java 2009-06-10 15:54:14 UTC (rev 14605) +++ cdk/branches/jchempaint-primary/src/main/org/openscience/cdk/renderer/generators/BasicAtomGenerator.java 2009-06-10 19:09:35 UTC (rev 14606) @@ -58,7 +58,6 @@ public IRenderingElement generate( IAtomContainer ac, IAtom atom, RendererModel model) { - // FIXME: pseudoatom from paintAtom if (atom == null || atom.getPoint2d() == null) return null; @@ -76,11 +75,12 @@ return this.generateCompactElement(atom, model); } - int alignment=0; - if(isCarbon( atom )) - alignment = GeometryTools.getBestAlignmentForLabel(ac, atom); - else - alignment = GeometryTools.getBestAlignmentForLabelXY(ac, atom); + int alignment = 0; + if (isCarbon(atom)) { + alignment = GeometryTools.getBestAlignmentForLabel(ac, atom); + } else { + alignment = GeometryTools.getBestAlignmentForLabelXY(ac, atom); + } return generateElements(atom, alignment, model); } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |