Я решил, что должен опубликовать этот вопрос, даже если я уже нашел решение, поскольку реализация Java была недоступна при поиске.
Использование HSV вместо RGB позволяет генерировать цвета с одинаковой насыщенностью и яркостью (что-то я хотел).
Google App Engine не позволяет использовать java.awt.Color, поэтому сделать следующее, чтобы конвертировать между HSV и RGB не вариант:
Color c = Color.getHSBColor(hue, saturation, value);
String rgb = Integer.toHexString(c.getRGB());
Изменить: я переместил свой ответ, как описано в комментарии Ник Джонсон.
Ex animo, - Александр.