/**
  * method to draw the tail of the balloon
  *
  * @param ellipseHeight the height of the ellipse
  * @param fillColor the color to bill the balloon with
  * @param outlineColor the color to outline the balloon with
  * @param g2 the 2d graphics context
  */
 protected void drawTail(int ellipseHeight, Color fillColor, Color outlineColor, Graphics2D g2) {
   Point tailEnd = getTailEnd();
   Point upperLeft = getUpperLeft();
   int margin = getMargin();
   int halfWidth = getWidth() / 2;
   int topY = upperLeft.y + ellipseHeight;
   int startX = upperLeft.x + halfWidth - margin;
   int endX = upperLeft.x + halfWidth + margin;
   GeneralPath triangle = new GeneralPath(GeneralPath.WIND_EVEN_ODD, 3);
   triangle.moveTo(startX, topY);
   triangle.lineTo(endX, topY);
   triangle.lineTo(tailEnd.x, tailEnd.y);
   triangle.lineTo(startX, topY);
   g2.setColor(fillColor);
   g2.fill(triangle);
   g2.setColor(outlineColor);
   g2.draw(new Line2D.Double(tailEnd.x, tailEnd.y, startX, topY));
   g2.draw(new Line2D.Double(tailEnd.x, tailEnd.y, endX, topY));
 }