# === butterflies_in_the_moonlight.cfdg # # See: www.contextfreeart.org/gallery/view.php?id=4212

startshape begin

CF::BorderFixed = 0 CF::BorderDynamic = 0 CF::Size = [ s 48 48 ]

shape begin {

gradient [ y 25 h 240 sat 1 b 0.2 z -100 ]
loop 15 [ z 100 ] {
  butterfly [ x (-20 .. 20) y (-20 .. 20) r (-25 .. 25) ]
}
grass [ z 5000 ]
moon [ x 25 25 s 35 h 60 sat 0.25 b 1 a -1 ]

}

shape circle_triple {

CIRCLE [ s  0.5 ]
CIRCLE [ x -2.5 ]
CIRCLE [ x +2.5 ]

}

shape butterfly {

circle_triple [ h (0 .. 360) sat (0.5 .. 1) b (0.5 .. 1) y (-3 .. 3) ]
butterfly [ s 0.99 z 1 ]

}

shape gradient {

nsteps = 40
loop nsteps [ h (-40/nsteps) b (1/nsteps) y (-50/nsteps) ] {
  SQUARE [ s 50 (50/nsteps) ]
}

}

shape blade {

nsteps = 20 .. 30
ang = -2 .. 2
loop nsteps [ y 0.75 h (-5 .. 5) b (0.75/nsteps) r ang ] {
  CIRCLE [ ]
}

}

shape grass {

loop 70 [ x 0.75 ] {
  blade [ s 0.5 x -25 y -24 h 120 sat 1 b (0.2 .. 0.6) ]
}

}

shape moon {

CIRCLE [ ]
moon [ s 0.99 a 0.01 ]

}