///|
fn main {
println("=== MoonBit Color Library Demo ===\n")
// Basic color creation
println("1. Color Creation:")
let orange = @color.RGB::from_int(255, 165, 0)
println(" Orange RGB: " + orange.to_hex())
let blue = @color.RGB::from_hex("#0080FF")
println(" Blue from hex: " + blue.to_hex())
// Color space conversions
println("\n2. Color Space Conversions:")
let red = @color.RGB::from_int(255, 87, 51)
let hsl = red.to_hsl()
println(
" RGB to HSL - H: " +
hsl.h.to_string() +
" S: " +
hsl.s.to_string() +
" L: " +
hsl.l.to_string(),
)
let hsv = red.to_hsv()
println(
" RGB to HSV - H: " +
hsv.h.to_string() +
" S: " +
hsv.s.to_string() +
" V: " +
hsv.v.to_string(),
)
// Color interpolation
println("\n3. Color Interpolation:")
let color1 = @color.RGB::from_int(255, 0, 0)
let color2 = @color.RGB::from_int(0, 0, 255)
let mid = @color.RGB::lerp(color1, color2, 0.5)
println(" Red to Blue (50%): " + mid.to_hex())
// Gradient
println("\n4. Gradient Generation:")
let gradient = @color.RGB::gradient(color1, color2, 5)
println(" 5-step gradient:")
for i in 0..