code: public void setLabel(String label) {
  		this.label = label;
  		// if (GRAPHICS == null) return;
  		bounds = METRICS.getStringBounds(getLabel(), GRAPHICS);
  		boolean upsideDown = end.x < start.x;
  		float dx = (float) bounds.getWidth() / 2.0f;
  		float dy = (curvy < 0.0f) ^ upsideDown ? METRICS.getAscent() : -METRICS
  				.getDescent();
  		bounds.setRect(bounds.getX() - dx, bounds.getY() + dy, bounds
  				.getWidth(), bounds.getHeight());
  		//System.out.println("Setting label" + label);
  	}
docs: Sets the label that will be drawn on the high arc point.
  
  @param label
  the new label for the arrow