[gsharp-devel] ties

Robert STRANDH strandh at labri.fr
Fri Mar 26 07:27:43 UTC 2004


Robert STRANDH writes:
 >
 >   * the function will check the distance between the centers of the
 >     noteheads in terms of multiples of the staff line distance.  If
 >     that distance is sufficiently small (say less than 4.5 times the
 >     staff line distance) a SMALL tie is used.  Such a tie is
 >     characterized by the fact that it is entirely contained between
 >     two staff lines.  The smallest small tie that I added to the font
 >     is roughly 2/3 the staff line distance, so if the center of the
 >     noteheads are closer than 2.2 staff line distances, they will
 >     overlap with the tie (but 2.2 is pretty tight).  When the distance
 >     is greater than 4.5 (or perhaps even less), the small tie is no
 >     longer pretty, so a LARGE tie should be used.
 > 
 >   * the LARGE tie (not yet added) traverses one staff line.  I am
 >     planning to make two different shapes of large ties, one to be
 >     used for noteheads ON a staff line, and another for noteheads
 >     BETWEEN two staff lines (because they do not end in the same y
 >     position).  The draw-tie function(s) must then use a different
 >     glyph for the two possible y-positions of the noteheads. There
 >     will be a bunch of large ties to be used from distances of around
 >     3 or so, to perhaps 9 or 10.
 > 
 >   * when the distance is even larger than 9 or 10, we must draw two
 >     glyphs representing the beginning and the end of the ties, and a
 >     rectangle for the middle.  I have made all the glyphs so that the
 >     center falls on exact pixel boundaries which means that the center
 >     can be invisibly extended by an ordinary black rectangle.

This is all based on what I decoded from Ted Ross' book, of course.

-- 
Robert Strandh

---------------------------------------------------------------------
Greenspun's Tenth Rule of Programming: any sufficiently complicated C
or Fortran program contains an ad hoc informally-specified bug-ridden
slow implementation of half of Common Lisp.
---------------------------------------------------------------------




More information about the gsharp-devel mailing list