holzchopf.color and holzchopf.mojo2color - HSB colouring and mixing

Holzchopf

Moderator
Staff member
Joined
Jul 31, 2017
Location
Bern, Switzerland
This is basically the code I used for the colouring in Color Chase. I added some features like the possibility to set colours in the HSL space, which is used in CSS or SVG (opposite to HSB/HSV space, which is used by other people). Internally, the HSL space is not used - hue, sat and bri fields are working in HSB space.


Basic features

Colour definition
  • In HSB, HSL or RGB space
  • Either by passing an array or single components
  • As RGB hex value
  • By copying an existing colour

Transformation between HSB and RGB space
  • Transformation is only performed when requested. E.g. when reading an HSB value of a colour with set RGB components. Or when reading a RGB component of colour with set HSB values.
  • Transformation from HSL to HSB is performed automatically

Mixing of colours
  • Component-wise mixing where red, green and blue are interpolated linearly
  • HSB mixing where hue is shifted, saturation and brightness interpolated

Clearing and setting the active colour for mojo2 canvases.
  • In separate module holzchopf.mojo2color
  • Provided as two functions taking a canvas and a colour
  • Will be changed to methods of canvas once Cerberus supports modifying existing classes ;)
holzchopf.mojo2color comes with an extensive example.
 

Attachments

Top Bottom