I actually didn't know how to read sheet music, so I had to look up the symbols for notes. I think it's "correct", but who knows.
cc
Code: Select all
startshape song_book
rule song_book {
song_page { }
song_page {x 90}
}
rule song_page {
song_line { }
song_line {y -15}
song_line {y -30}
song_line {y -45}
song_line {y -60}
song_line {y -75}
}
rule song_line {
measure_with_bars { }
measure_with_bars {x 20}
measure_with_bars {x 40 }
measure_with_bars {x 60}
thin_line {r 90 s 0.25 y -1.95 x 79}
}
rule measure_with_bars {
measure { x 2 }
measure_5_lines {s 0.5}
measure_5_lines {s 0.5 x 2}
measure_5_lines {s 0.5 x 4}
thin_line {r 90 s 0.25 y -1.95 x 0}
thin_line {r 90 s 0.25 y -1.95 x 20}
}
rule measure {
halfmeasure { }
halfmeasure {x 8}
}
rule measure {
quartermeasure { }
halfmeasure {x 4}
quartermeasure {x 12 }
}
rule halfmeasure {
r_halfnote { }
}
rule halfmeasure {
quartermeasure { }
quartermeasure {x 4}
}
rule quartermeasure {
r_quarternote { }
}
rule quartermeasure {
eighthmeasure { }
eighthmeasure {x 2}
}
rule eighthmeasure {
r_eighthnote { }
}
rule eighthmeasure {
sixteenthmeasure { }
sixteenthmeasure {x 1 }
}
rule sixteenthmeasure {
r_sixteenthnote { }
}
rule r_halfnote 0.2 { halfnote { } }
rule r_halfnote { r_halfnote {y 0.5} }
rule r_halfnote { r_halfnote {y -0.5} }
rule r_quarternote 0.2 { quarternote { } }
rule r_quarternote { r_quarternote {y 0.5} }
rule r_quarternote { r_quarternote {y -0.5} }
rule r_eighthnote 0.2 { eighthnote { } }
rule r_eighthnote { r_eighthnote {y 0.5} }
rule r_eighthnote { r_eighthnote {y -0.5} }
rule r_sixteenthnote 0.2 { sixteenthnote { } }
rule r_sixteenthnote { r_sixteenthnote {y 0.5} }
rule r_sixteenthnote { r_sixteenthnote {y -0.5} }
rule halfnote {
CIRCLE { }
CIRCLE {b 1.0 s 0.5}
vertbar {s 0.2 x 0.392 y 0.1}
}
rule quarternote {
CIRCLE { }
vertbar {s 0.2 x 0.392 y 0.1}
}
rule eighthnote {
CIRCLE { }
vertbar {s 0.2 x 0.392 y 0.1}
twisty {y 2.1 r -20 s 0.2 x 0.375}
}
rule sixteenthnote {
CIRCLE { }
vertbar {s 0.2 x 0.392 y 0.1}
twisty {y 2.1 r -20 s 0.2 x 0.375}
twisty {y 1.6 r -20 s 0.2 x 0.375}
}
rule vertbar {
SQUARE { }
SQUARE {y 1}
SQUARE {y 2}
SQUARE {y 3}
SQUARE {y 4 }
SQUARE {y 5}
SQUARE {y 6}
SQUARE {y 7}
SQUARE {y 8}
SQUARE {y 9}
SQUARE {y 10}
}
rule twisty {
quartercircle {x 2 r 180}
quartercircle {x 2.5 y -4}
}
rule quartercircle {
parm1 {r 0}
parm1 {r 10}
parm1 {r 20}
parm1 {r 30}
parm1 {r 40}
parm1 {r 50}
parm1 {r 60}
parm1 {r 70}
parm1 {r 80}
parm1 {r 90}
}
rule parm1 {
arm1 {r 0}
arm1 {r 1}
arm1 {r 2}
arm1 {r 3}
arm1 {r 4}
arm1 {r 5}
arm1 {r 6}
arm1 {r 7}
arm1 {r 8}
arm1 {r 9}
}
rule arm1 {
CIRCLE {x 2}
}
rule measure_line {
thin_line {s 0.25}
thin_line {s 0.25 x 4}
thin_line {s 0.25 x 8}
thin_line {s 0.25 x 12}
thin_line {s 0.25 x 16}
thin_line {s 0.25 x 20}
thin_line {s 0.25 x 24}
thin_line {s 0.25 x 28}
}
rule thin_line {
SQUARE { }
SQUARE {x 1 }
SQUARE {x 2 }
SQUARE {x 3 }
SQUARE {x 4 }
SQUARE {x 5 }
SQUARE {x 6 }
SQUARE {x 7 }
SQUARE {x 8 }
SQUARE {x 9 }
SQUARE {x 10}
SQUARE {x 11}
SQUARE {x 12}
SQUARE {x 13}
SQUARE {x 14}
SQUARE {x 15}
}
rule measure_5_lines {
measure_line { }
measure_line {y 2}
measure_line {y 4}
measure_line {y -2}
measure_line {y -4}
}
/****** LINES TO RANDOMIZE ***************/
/* COMMENT TO STRAIGHTEN */
rule measure 50 { measure {r 0.1} }
rule measure 50 { measure {r -0.1} }
rule song_line 50 {song_line {r 0.1 }}
rule song_line 50 {song_line {r -0.1 }}
rule thin_line 10 { thin_line {r -0.4 } }
rule thin_line 10 { thin_line {r 0.4 } }
rule quarter_note 10 { quarter_note {b 0.3 } }
rule quarter_note 10 { quarter_note {b -0.3 } } /* */