On this page:
color-model:  rgb->xyz
color-model:  rgb-color-distance
color-model:  xyz->rgb
color-model:  xyz?
color-model:  xyz-x
color-model:  xyz-y
color-model:  xyz-z
color-model:  hsl->rgb
color-model:  rgb->hsl

5 Color Model

procedure

(color-model:rgb->xyz r g b)  color-model:xyz?

  r : number?
  g : number?
  b : number?
Converts a color represented as a red-green-blue tuple (each value from 0 to 255) into an XYZ tuple. This describes a point in the CIE XYZ color space.

procedure

(color-model:rgb-color-distance red-a    
  green-a    
  blue-a    
  red-b    
  green-b    
  blue-b)  number?
  red-a : number?
  green-a : number?
  blue-a : number?
  red-b : number?
  green-b : number?
  blue-b : number?
This calculates a distance between two colors. The smaller the distance, the closer the colors should appear to the human eye. A distance of 10 is reasonably close that it could be called the same color.

This function is not symmetric in red, green, and blue, so it is important to pass red, green, and blue components of the colors in the proper order. The first three arguments are red, green and blue for the first color, respectively, and the second three arguments are red green and blue for the second color, respectively.

procedure

(color-model:xyz->rgb x y z)  (list/c number? number? number?)

  x : number?
  y : number?
  z : number?
Converts an XYZ-tuple (in the CIE XYZ colorspace) into a list of values representing an RGB-tuple.

procedure

(color-model:xyz? val)  boolean?

  val : any/c
Determines if val an xyz color record.

procedure

(color-model:xyz-x xyz)  number?

  xyz : color-model:xyz?
Extracts the x component of xyz.

procedure

(color-model:xyz-y xyz)  number?

  xyz : color-model:xyz?
Extracts the y component of xyz.

procedure

(color-model:xyz-z xyz)  number?

  xyz : color-model:xyz?
Extracts the z component of xyz.

procedure

(color-model:hsl->rgb hue    
  saturation    
  lightness)  
byte? byte? byte?
  hue : (real-in 0 360)
  saturation : (real-in 0 1)
  lightness : (real-in 0 1)
Computes rgb color values for the hsl color inputs.

procedure

(color-model:rgb->hsl red green blue)  
(real-in 0 360)
(real-in 0 1)
(real-in 0 1)
  red : byte?
  green : byte?
  blue : byte?
Computes hsl color values for the rgb color inputs.