- block = nullFrame.createImage((eRes-sRes)*av.charWidth, (eSeq-sSeq)*av.charHeight);\r
- g = block.getGraphics();\r
-\r
- ap.seqPanel.seqCanvas.drawPanel(g, sRes, eRes, sSeq, eSeq, sRes, sSeq, 0);\r
-\r
- blockh = (int)( (float)(eSeq-sSeq)/(float)alheight * sequencesHeight )+1 ;\r
- blockw = (int)( (float)(eRes-sRes)/(float)alwidth * width )+1;\r
-\r
- blocky += (int) ((float)sSeq/(float)alheight* sequencesHeight);\r
-\r
- mg.drawImage(block, blockx,\r
- blocky ,\r
- blockx + blockw,\r
- blocky + blockh,\r
-\r
- 0, 0, block.getWidth(null),block.getHeight(null), this);\r
-\r
- block = null;\r
- }\r
+ int lastcol=-1, lastrow=-1;\r
+ Color color = Color.yellow;\r
+ int row, col;\r
+ for (col = 0; col < width; col++)\r
+ {\r
+ for (row = 0; row < sequencesHeight; row++)\r
+ {\r
+ if((int)(col*sampleCol) == lastcol && (int)(row*sampleRow)==lastrow)\r
+ {\r
+ mg.drawLine(col, row, col, row);\r
+ continue;\r
+ }\r
+\r
+ if (av.conservation != null)\r
+ {\r
+ mg.translate(col, sequencesHeight);\r
+ ap.annotationPanel.drawGraph(mg, av.conservation,\r
+ (int) (sampleCol) + 1,\r
+ graphHeight,\r
+ (int) (col * sampleCol),\r
+ (int) (col * sampleCol) + 1);\r
+ mg.translate( -col, -sequencesHeight);\r
+ }\r
+\r
+ lastrow = (int)(row*sampleRow);\r
+ lastcol = (int)(col*sampleCol);\r
+\r
+ if(av.alignment.getSequenceAt(lastrow).getLength()>lastcol)\r
+ {\r
+ color = sr.findSequenceColour(av.alignment.getSequenceAt(lastrow), lastcol);\r
+\r
+\r
+ if (av.showSequenceFeatures)\r
+ color = fr.findFeatureColour(color,\r
+ av.alignment.getSequenceAt(lastrow),\r
+ lastcol);\r
+ }\r
+\r
+ mg.setColor(color);\r
+ mg.drawLine(col,row,col,row);\r