if(icon != null) {
BufferedImage image = new BufferedImage(icon.getIconWidth(),
icon.getIconHeight(), BufferedImage.TYPE_INT_ARGB);
Graphics2D ig = image.createGraphics();
icon.paintIcon(null, ig, 0, 0);
int imageWidth = image.getWidth(null);
int imageHeight = image.getHeight(null);
int xLoc = (int) (x - imageWidth / 2);
int yLoc = (int) (y - imageHeight / 2);