Merge branch 'master' of git://factorcode.org/git/factor
[factor/jcg.git] / extra / cfdg / models / aqua-star / aqua-star.factor
blobdbb7eb5ed0ca962d54add74ed290e1bda8daca29
2 USING: kernel namespaces math random opengl.gl opengl.glu ui ui.gadgets.slate
3        random-weighted cfdg ;
5 IN: cfdg.models.aqua-star
7 : tentacle ( -- )
8 iterate? [
9   { { 1 [ circle
10           [ .23 y .99 s .002 b tentacle ] do ] }
11     { 1 [ circle
12           [ .17 y 2 r .99 s .002 b tentacle ] do ] }
13     { 1 [ circle
14           [ .12 y -2 r .99 s .001 b tentacle ] do ] } }
15   call-random-weighted
16 ] when ;
18 : anemone ( -- )
19 iterate? [
20   tentacle
21   [ 10 x -11 r .995 s -.002 b anemone ] do
22 ] when ;
24 : anemone-begin ( -- ) [ 196 hue 0.8324 sat 1 b anemone ] do ;
26 ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
28 : init ( -- )
29   [ -1 b ]             >background
30   { -60 140 -120 140 } >viewport
31   0.1                  >threshold
32   [ anemone-begin ]    >start-shape ;
34 : run ( -- ) [ init ] cfdg-window. ;
36 MAIN: run