Author: scooter
Date: 2012-06-12 09:56:52 -0700 (Tue, 12 Jun 2012)
New Revision: 29533
Modified:
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/cyannotator/annotations/BoundedTextAnnotationImpl.java
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/cyannotator/annotations/TextAnnotationImpl.java
Log:
Fix positioning for Birds Eye View
Modified:
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/cyannotator/annotations/BoundedTextAnnotationImpl.java
===================================================================
---
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/cyannotator/annotations/BoundedTextAnnotationImpl.java
2012-06-12 16:07:18 UTC (rev 29532)
+++
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/cyannotator/annotations/BoundedTextAnnotationImpl.java
2012-06-12 16:56:52 UTC (rev 29533)
@@ -147,13 +147,21 @@
// want to add other options
Graphics2D g2 = (Graphics2D) g;
g2.setColor(textColor);
+
+ int width = (int)((double)getWidth()*scaleFactor/getZoom());
+ int height = (int)((double)getHeight()*scaleFactor/getZoom());
Font tFont =
font.deriveFont(((float)(scaleFactor/getZoom()))*font.getSize2D());
FontMetrics fontMetrics=g.getFontMetrics(tFont);
- int halfWidth =
((int)(getWidth()*scaleFactor)-fontMetrics.stringWidth(text))/2;
+
+ int halfWidth = (width-(int)(fontMetrics.stringWidth(text)))/2;
+
// Note, this is + because we start at the baseline
- int halfHeight =
((int)(getHeight()*scaleFactor)+fontMetrics.getHeight()/2)/2;
+ // int halfHeight =
((int)(getHeight()*scaleFactor)+fontMetrics.getHeight()/2)/2;
+ int halfHeight = (height+fontMetrics.getHeight()/2)/2;
+
int xLoc = (int)(x*scaleFactor) + halfWidth;
int yLoc = (int)(y*scaleFactor) + halfHeight;
+
g2.setFont(tFont);
g2.drawString(text, xLoc, yLoc);
}
Modified:
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/cyannotator/annotations/TextAnnotationImpl.java
===================================================================
---
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/cyannotator/annotations/TextAnnotationImpl.java
2012-06-12 16:07:18 UTC (rev 29532)
+++
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/cyannotator/annotations/TextAnnotationImpl.java
2012-06-12 16:56:52 UTC (rev 29533)
@@ -164,17 +164,23 @@
Graphics2D g2 = (Graphics2D) g;
g2.setColor(textColor);
+ // Font tFont =
font.deriveFont(((float)(scaleFactor/getZoom()))*font.getSize2D());
Font tFont =
font.deriveFont(((float)(scaleFactor/getZoom()))*font.getSize2D());
FontMetrics fontMetrics=g.getFontMetrics(tFont);
- int halfWidth =
((int)(getWidth()*scaleFactor)-fontMetrics.stringWidth(text))/2;
+ int width = (int)((double)getWidth()*scaleFactor/getZoom());
+ int halfWidth = (width-fontMetrics.stringWidth(text))/2;
+
// Note, this is + because we start at the baseline
- int halfHeight =
((int)(getHeight()*scaleFactor)+fontMetrics.getHeight()/2)/2;
- int xLoc = (int)(x*scaleFactor) + halfWidth;
- int yLoc = (int)(y*scaleFactor) + halfHeight;
+ int height = (int)((double)getHeight()*scaleFactor/getZoom());
+ int halfHeight = (height+fontMetrics.getHeight()/2)/2;
+ int xLoc = (int)(x*scaleFactor + halfWidth);
+ int yLoc = (int)(y*scaleFactor + halfHeight);
+
g2.setFont(tFont);
- g2.drawString(text, xLoc, yLoc);
+ // g2.drawString(text, xLoc, yLoc);
+ g2.drawString(text, (int)x, (int)y);
}
public Rectangle getBounds() {
--
You received this message because you are subscribed to the Google Groups
"cytoscape-cvs" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/cytoscape-cvs?hl=en.