How to convert RGB to HSB and vice versa?

For completeness, here’s my test code which includes the conversion from RGB to HSB and from HSB to RGB:

Required imports

import java.awt.Color
import java.util.List
	// from RGB to HSB
	val List<Float> hsb = Color.RGBtoHSB(250,150,50,null)
	val float hue = hsb.get(0)
	val float saturation = hsb.get(1)
	val float brightness = hsb.get(2)
	val String hsbString = hue + "," + saturation + "," + brightness
 
	logInfo("scene.rules", "H: " + hue)
	logInfo("scene.rules", "S: " + saturation)
	logInfo("scene.rules", "B: " + brightness)
	logInfo("scene.rules", "HSB: " + hsbString)

	// from HSB to RGB
	val int rgb = Color.HSBtoRGB(hue, saturation, brightness)
	val color = new Color(rgb)

	logInfo("scene.rules", "R: " + color.getRed())
	logInfo("scene.rules", "G: " + color.getGreen())
	logInfo("scene.rules", "B: " + color.getBlue())