 (defn hsv
   "Creates a color value from a hue, saturation, and value. The fractional
   portion of the hue determines the angle in the HSV space; saturation and
-  value should be numbers from [0.0, 1.0]."
+  value should be numbers from [0.0, 1.0].
+
+  The primary red, green, and blue hues are found at 0/3, 1/3, and 2/3,
+  respectively."
   [h s v]
-  ; TODO: document hue angles for pure red/green/blue
   (Color/HSBtoRGB (float h) (float s) (float v)))
 
 

  "Takes a color value and returns a vector containing the hue, saturation, and
  value components as floating-point numbers."
  [color]
  (let [c (Color. (unchecked-int color))]
    (vec (Color/RGBtoHSB (.getRed c) (.getBlue c) (.getGreen c) nil))))


  See: http://en.wikipedia.org/wiki/HSL_and_HSV"
  (import
    java.awt.Color))


(defn color?
  "Tests whether the given value is a valid color."
  [value]
  (and (integer? value)
       (< Integer/MIN_VALUE value Integer/MAX_VALUE)))



;;;;; RGB COLOR SPACE ;;;;;
