public class RectangularBeadRenderer extends AbstractBeadRenderer
RectangularBeadRenderer
renders features as simple
rectangles. Their outline and fill Paint
,
Stroke
, feature depth, Y-axis displacement are
configurable. The height of the rectangle will be equal to half its
width, but not greater than the beadDepth
set in the
constructor.
An alternative bead height behaviour is available where the
rectangle height does not scale with its current width. The
setHeightScaling
method should be passed a boolean
value to change this. The default is to use height scaling.
Modifier and Type | Field and Description |
---|---|
static ChangeType |
HEIGHTSCALING
Constant
HEIGHTSCALING indicating a change to the
feature height scaling policy. |
protected Rectangle2D |
rect |
protected boolean |
scaleHeight |
beadDepth, beadDisplacement, beadFill, beadOutline, beadStroke, delegates, delegationCache, DEPTH, DISPLACEMENT, FILL, OUTLINE, STROKE
Constructor and Description |
---|
RectangularBeadRenderer()
Creates a new
RectangularBeadRenderer with the
default settings. |
RectangularBeadRenderer(double beadDepth,
double beadDisplacement,
Paint beadOutline,
Paint beadFill,
Stroke beadStroke)
Creates a new
RectangularBeadRenderer . |
Modifier and Type | Method and Description |
---|---|
double |
getDepth(SequenceRenderContext context)
getDepth calculates the depth required by this
renderer to display its beads. |
boolean |
getHeightScaling()
getHeightScaling returns the state of the height
scaling policy. |
void |
renderBead(Graphics2D g2,
Feature f,
SequenceRenderContext context)
renderBead renders features as simple rectangle. |
void |
setHeightScaling(boolean isEnabled)
setHeightScaling sets the height scaling
policy. |
getBeadDepth, getBeadDisplacement, getBeadFill, getBeadOutline, getBeadStroke, processMouseEvent, removeDelegateRenderer, renderFeature, setBeadDepth, setBeadDisplacement, setBeadFill, setBeadOutline, setBeadStroke, setDelegateRenderer
addChangeListener, addChangeListener, generateChangeSupport, getChangeSupport, hasListeners, hasListeners, isUnchanging, removeChangeListener, removeChangeListener
public static final ChangeType HEIGHTSCALING
HEIGHTSCALING
indicating a change to the
feature height scaling policy.protected Rectangle2D rect
protected boolean scaleHeight
public RectangularBeadRenderer()
RectangularBeadRenderer
with the
default settings.public RectangularBeadRenderer(double beadDepth, double beadDisplacement, Paint beadOutline, Paint beadFill, Stroke beadStroke)
RectangularBeadRenderer
.beadDepth
- a double
.beadDisplacement
- a double
.beadOutline
- a Paint
.beadFill
- a Paint
.beadStroke
- a Stroke
.public void renderBead(Graphics2D g2, Feature f, SequenceRenderContext context)
renderBead
renders features as simple rectangle.renderBead
in interface BeadFeatureRenderer
renderBead
in class AbstractBeadRenderer
g2
- a Graphics2D
.f
- a Feature
to render.context
- a SequenceRenderContext
context.public double getDepth(SequenceRenderContext context)
getDepth
calculates the depth required by this
renderer to display its beads.getDepth
in interface FeatureRenderer
getDepth
in class AbstractBeadRenderer
context
- a SequenceRenderContext
.double
.public boolean getHeightScaling()
getHeightScaling
returns the state of the height
scaling policy.boolean
true if height scaling is
enabled.public void setHeightScaling(boolean isEnabled) throws ChangeVetoException
setHeightScaling
sets the height scaling
policy. Default behaviour is for this to be enabled leading to
features being drawn with a height equal to half their width,
subject to a maximum height restriction equal to the
beadDepth
set in the constructor. If disabled,
features will always be drawn at the maximum height allowed by
the beadDepth
parameter.isEnabled
- a boolean
.ChangeVetoException
- if an error occurs.Copyright © 2014 BioJava. All rights reserved.