public static void drawAngledString(Graphics g,String text,int x,int y,double angle){
  Graphics2D g2D=(Graphics2D)g;
  AffineTransform oldAt=g2D.getTransform();
  AffineTransform at=new AffineTransform(oldAt);
  at.rotate(angle,x,y);
  g2D.setTransform(at);
  g2D.drawString(text,x,y);
  g2D.setTransform(oldAt);
}

public static void drawAngledString ( Graphics g , String text , int x , int y , double angle ) { Graphics2D g2D = ( Graphics2D ) g ; AffineTransform oldAt = g2D . getTransform ( ) ; AffineTransform at = new AffineTransform ( oldAt ) ; at . rotate ( angle , x , y ) ; g2D . setTransform ( at ) ; g2D . drawString ( text , x , y ) ; g2D . setTransform ( oldAt ) ; }
draws the text from a starting point with an angle
