-- | Tom Johnson. \"Perfect Rhythmic Tilings\". -- Technical report, IRCAM, 24 January 2004. MaMuX Lecture. module Music.Theory.Tiling.Johnson_2004 where import Music.Theory.Tiling.Canon -- | @{0,1,2}@ order 5, p.1 -- -- >>> v_print 15 (r_voices p1) -- > -- > ..***.......... -- > ........*.*.*.. -- > .....*...*...*. -- > .*....*....*... -- > *......*......* p1 :: R p1 = (15,[0,1,2],[1,2,4,5,7],[2,8,5,1,0]) -- | @{0,1,2}@ order 7, p.2 -- -- >>> v_print 21 (r_voices p2) -- > -- > ..............***.... -- > ..*.*.*.............. -- > ...*...*...*......... -- > ........*....*....*.. -- > .....*......*......*. -- > .*.......*.......*... -- > *.........*.........* p2 :: R p2 = (21,[0,1,2],[1,2,4,5,7,8,10],[14,2,3,8,5,1,0]) -- | @{0,1}@ order 4, p.3 -- -- >>> v_print 8 (r_voices p3) -- > -- > *...*... -- > .**..... -- > ...*..*. -- > .....*.* p3 :: R p3 = (8,[0,1],[4,1,3,2],[0,1,3,5]) -- | @{0,1}@ order 5, p.4 -- -- >>> mapM_ (v_print 10 . r_voices) p4 -- > -- > *...*..... -- > .**....... -- > ...*....*. -- > .....*.*.. -- > ......*..* -- > -- > *....*.... -- > .**....... -- > ...*..*... -- > ....*...*. -- > .......*.* -- > -- > *...*..... -- > .*....*... -- > ..**...... -- > .....*..*. -- > .......*.* p4 :: [R] p4 = [(10,[0,1],[4,1,5,2,3],[0,1,3,5,6]) ,(10,[0,1],[5,1,3,4,2],[0,1,3,4,7]) ,(10,[0,1],[4,5,1,3,2],[0,1,2,5,7])] -- | Open @{1,2,3}@ order 5, p.4 -- -- >>> v_print 18 (r_voices p4_b) -- > -- > ...***............ -- > ........*.*.*..... -- > .........*...*...* -- > .*....*....*...... -- > *......*......*... p4_b :: R p4_b = (21,[0,1,2],[1,2,4,5,7],[3,8,9,1,0]) -- Local Variables: -- truncate-lines:t -- End: