org.biojava.bio.gui.sequence.CircularFeaturesRenderer Maven / Gradle / Ivy
package org.biojava.bio.gui.sequence;
import java.awt.Graphics2D;
import java.awt.Shape;
import java.awt.geom.AffineTransform;
import java.util.Iterator;
import org.biojava.bio.seq.Feature;
/**
*
*
* @author Matthew Pocock
*/
public class CircularFeaturesRenderer
implements CircularRenderer {
private CircularFeatureRenderer renderer;
public CircularFeaturesRenderer() {}
public CircularFeaturesRenderer(CircularFeatureRenderer renderer) {
this.renderer = renderer;
}
public CircularFeatureRenderer getRenderer() {
return renderer;
}
public void setRenderer(CircularFeatureRenderer renderer) {
this.renderer = renderer;
}
public double getDepth(CircularRendererContext crc) {
return renderer.getDepth(crc);
}
public void paint(Graphics2D g2, CircularRendererContext crc) {
for (Iterator i = crc.getFeatures().features(); i.hasNext();) {
Shape clip = g2.getClip();
AffineTransform at = g2.getTransform();
Feature f = (Feature) i.next();
renderer.renderFeature(g2, f, crc);
g2.setTransform(at);
g2.setClip(clip);
}
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy