int x, int y, int iconOffset, int startRes, int column,
boolean validRes, boolean validEnd)
{
int x, int y, int iconOffset, int startRes, int column,
boolean validRes, boolean validEnd)
{
: row_annotations[column - 1].secondaryStructure;
boolean diffupstream = sCol == 0 || row_annotations[sCol - 1] == null
: row_annotations[column - 1].secondaryStructure;
boolean diffupstream = sCol == 0 || row_annotations[sCol - 1] == null
boolean diffdownstream = !validRes || !validEnd
|| row_annotations[column] == null
|| dc != row_annotations[column].secondaryStructure;
boolean diffdownstream = !validRes || !validEnd
|| row_annotations[column] == null
|| dc != row_annotations[column].secondaryStructure;
+ if (diffupstream || diffdownstream)
+ {
+ // draw glyphline under arrow
+ drawGlyphLine(g, lastSSX, x, y, iconOffset);
+ }
+ g.setColor(STEM_COLOUR);
+
*/
fillPolygon(g, new int[] { lastSSX + 5, lastSSX + 5, lastSSX },
new int[]
*/
fillPolygon(g, new int[] { lastSSX + 5, lastSSX + 5, lastSSX },
new int[]
- { y + iconOffset, y + 14 + iconOffset, y + 8 + iconOffset },
+ { y + iconOffset + 1, y + 13 + iconOffset,
+ y + 7 + iconOffset },
* if annotation ending with an opeing base pair half of the stem,
* display a forward arrow
*/
* if annotation ending with an opeing base pair half of the stem,
* display a forward arrow
*/
- fillPolygon(g, new int[] { x2 - 5, x2 - 5, x2 },
+ fillPolygon(g, new int[] { x2 - 6, x2 - 6, x2 - 1 },
- { y + iconOffset, y + 14 + iconOffset, y + 8 + iconOffset },
+ { y + iconOffset + 1, y + 13 + iconOffset,
+ y + 7 + iconOffset },
- fillRect(g, x1, y + 4 + iconOffset, x2 - x1, 7);
+ unsetAntialias(g);
+ fillRect(g, x1, y + 4 + iconOffset, x2 - x1, 6);
: row_annotations[column - 1].displayCharacter;
boolean diffupstream = sCol == 0 || row_annotations[sCol - 1] == null
: row_annotations[column - 1].displayCharacter;
boolean diffupstream = sCol == 0 || row_annotations[sCol - 1] == null
boolean diffdownstream = !validRes || !validEnd
|| row_annotations[column] == null
|| !dc.equals(row_annotations[column].displayCharacter);
boolean diffdownstream = !validRes || !validEnd
|| row_annotations[column] == null
|| !dc.equals(row_annotations[column].displayCharacter);
- fillRect(g, x1 - 1, y + 4 + iconOffset, x2 - x1 + 1, 6);
+ fillRect(g, x1, y + 4 + iconOffset, x2 - x1, 6);
{
// draw single full width glyphline
drawGlyphLine(g, lastSSX, endRes - x, y, iconOffset);
{
// draw single full width glyphline
drawGlyphLine(g, lastSSX, endRes - x, y, iconOffset);
x, y, iconOffset, startRes, column, validRes, validEnd);
break;
default:
x, y, iconOffset, startRes, column, validRes, validEnd);
break;
default:
{
// draw single full width glyphline
drawGlyphLine(g, lastSSX, endRes - x, y, iconOffset);
{
// draw single full width glyphline
drawGlyphLine(g, lastSSX, endRes - x, y, iconOffset);
- g.fillRect(lastSSX, y + 6 + iconOffset, (x * charWidth) - lastSSX - 1,
- 2);
- if (!isVectorRendition())
- {
- g.drawRect(lastSSX, y + 6 + iconOffset, (x * charWidth) - lastSSX - 1,
- 2);
- }
+ g.fillRect(lastSSX, y + 6 + iconOffset, (x * charWidth) - lastSSX, 2);
g.setColor(SHEET_COLOUR);
fillRect(g, lastSSX, y + 4 + iconOffset,
g.setColor(SHEET_COLOUR);
fillRect(g, lastSSX, y + 4 + iconOffset,
- fillRect(g, lastSSX, y + 4 + iconOffset, x * charWidth - lastSSX,
- isVectorRendition() ? 6 : 7);
+ fillRect(g, lastSSX, y + 4 + iconOffset, (x * charWidth) - lastSSX,
+ 6);
{
// draw glyph line behind helix (visible in EPS or SVG output)
drawGlyphLine(g, lastSSX, x, y, iconOffset);
{
// draw glyph line behind helix (visible in EPS or SVG output)
drawGlyphLine(g, lastSSX, x, y, iconOffset);
fillRoundRect(g, lastSSX, y + 3 + iconOffset, x2 - x1 - ofs, 8, 0,
0);
}
fillRoundRect(g, lastSSX, y + 3 + iconOffset, x2 - x1 - ofs, 8, 0,
0);
}
fillRoundRect(g, lastSSX + ofs, y + 3 + iconOffset, x2 - x1 - ofs,
8, 0, 0);
}
fillRoundRect(g, lastSSX + ofs, y + 3 + iconOffset, x2 - x1 - ofs,
8, 0, 0);
}
- fillArc(g, (x * charWidth) - charWidth - 1, y + 3 + iconOffset,
- charWidth, 8, 270, 180);
+ fillArc(g, ((x - 1) * charWidth), y + 3 + iconOffset, charWidth, 8,
+ 270, 180);
private void fillPolygon(Graphics g, int[] xpoints, int[] ypoints, int n)
{
private void fillPolygon(Graphics g, int[] xpoints, int[] ypoints, int n)
{
- if (!isVectorRendition())
- {
- setAntialias(g);
- g.fillPolygon(xpoints, ypoints, n);
- g.drawPolygon(xpoints, ypoints, n);
- }
private void fillRect(Graphics g, int a, int b, int c, int d)
{
private void fillRect(Graphics g, int a, int b, int c, int d)
{
}
private void fillRoundRect(Graphics g, int a, int b, int c, int d, int e,
}
private void fillRoundRect(Graphics g, int a, int b, int c, int d, int e,
{
setAntialias(g);
g.fillRoundRect(a, b, c, d, e, f);
{
setAntialias(g);
g.fillRoundRect(a, b, c, d, e, f);
}
private void fillArc(Graphics g, int a, int b, int c, int d, int e, int f)
{
setAntialias(g);
g.fillArc(a, b, c, d, e, f);
}
private void fillArc(Graphics g, int a, int b, int c, int d, int e, int f)
{
setAntialias(g);
g.fillArc(a, b, c, d, e, f);
}
private void drawLine(Graphics g, Stroke s, int a, int b, int c, int d)
}
private void drawLine(Graphics g, Stroke s, int a, int b, int c, int d)