Carl Worth [Sat, 24 Sep 2011 21:39:56 +0000 (14:39 -0700)]
Open MIDI device and display notes being played in real time.
Every time a key on the MIDI input device is pressed, a whole note appears
on the appropriate staff. When the key is released, the note disappears.
No ledger lines are drawn yet, and there appears to be a bug where notes
get stuck on (refusing to disappear after a key is released) triggered
most easily by pressing *many* keys simultaneously several times.
Carl Worth [Fri, 23 Sep 2011 06:04:53 +0000 (23:04 -0700)]
Start drawing some very rudimentary notes.
I'm picking the correct (but hard-coded by glyph index) noteheads
out of the Gonville font. But I'm not drawing any stems nor flags
yet. Also the spacing between the notes isn't interesting yet, nor
do I have measure lines, nor ledger lines.
Oh, and the notes I added here for testing aren't even musically
interesting either. Anyway, we're still getting started obviously.
Carl Worth [Fri, 23 Sep 2011 00:22:22 +0000 (17:22 -0700)]
Restructure code to manually add staves, braces, and notes.
Previously, the program was hard-coded to draw a grand staff, (two staves
connected by a brace). Now, at the level of the score library, each staff
and any braces are added manually and any set of staves and braces can be
drawn, (the only the two-staves-connected-by-one-brace has been tested).
There's also functionality for ading notes, though no notes are drawn yet.
Carl Worth [Sat, 17 Sep 2011 15:55:09 +0000 (08:55 -0700)]
Add some (particularly cheesy) drawing of a brace and clefs on the grand staff.
This assumes the presence of the Gonville-26 and Gonville-Brace fonts, (by
Simon Tatham). Though it would be simple enough to change the code to use
any Lilypond-compatible font, (if the glyph selection were also update or
just fixed to lookup glyphs by name instead of hard-coding the index).
Carl Worth [Sat, 17 Sep 2011 06:55:51 +0000 (23:55 -0700)]
Draw a second staff (and vertical lines at the beginning and end of staff).
This is almost the grand staff necessary for a piano score, (missing
the brace). The _draw_grand_staff function is a bit too specialized. A
more general approach will involve the ability to add an arbitrary
number of staffs (staves?) to the score, and selectively tie some
together (with or without a brace).