/*
* KmlUtils.java Created Oct 14, 2010 by Andrew Butler, PSL
*/
package kmlframework.utils;
/** Contains utility methods useful for creating KML documents */
public class KmlUtils
{
private static final java.text.SimpleDateFormat GOOGLE_TIME_FORMAT;
static
{
GOOGLE_TIME_FORMAT = new java.text.SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss'Z'");
GOOGLE_TIME_FORMAT.setTimeZone(java.util.TimeZone.getTimeZone("GMT"));
}
/**
* Writes a time to correct KML format
*
* @param time The time (in milliseconds from the epoch) to convert
* @return The KML-formatted time
*/
public static String formatTime(long time)
{
return GOOGLE_TIME_FORMAT.format(new java.util.Date(time));
}
private static final String HEX = "0123456789abcdef";
/**
* Writes a color to correct KML format
*
* @param color The color to convert
* @return The KML-formatted color
*/
public static String formatColor(java.awt.Color color)
{
StringBuilder ret = new StringBuilder();
int a = color.getAlpha();
ret.append(HEX.charAt(a / 16));
ret.append(HEX.charAt(a % 16));
int b = color.getBlue();
ret.append(HEX.charAt(b / 16));
ret.append(HEX.charAt(b % 16));
int g = color.getGreen();
ret.append(HEX.charAt(g / 16));
ret.append(HEX.charAt(g % 16));
int r = color.getRed();
ret.append(HEX.charAt(r / 16));
ret.append(HEX.charAt(r % 16));
return ret.toString();
}
}