On Oct 26, 2011, at 8:22 PM, k-ohara5...@oco.net wrote:

> On 2011/10/26 15:41:12, MikeSol wrote:
>> All problems fixed and ready for a review.
> 
> Thoroughly indecipherable.
> 
> http://codereview.appspot.com/5293060/


Sorry if anything's unclear - your intuition from a previous e-mail was right 
in that there was some broken code that was quanting broken beams incorrectly.  
The ends of broken beams should be the reference points for quanting, not the 
extremal normal stems  Most changes are due to that.

What needs comments?
Here's a bit of a summary:

beam.cc
-) get_beam_segments is turned into a Scheme callback
-) the x-span of the Beam are stored in X-positions (calc_x_positions).  these 
are used everywhere that the span of the beam used to be calculated.  the 
slopes of broken beams were off before because x_spans were calculated 3 
different ways in 3 different functions, and this standardizes it.
-) beam quanting can do three broken beam styles:
---) individual (old style)
---) strict-prolongation (new style, split beam slopes and offsets line up 
exactly)
---) peters-prolongation (uses the style from turn-of-the-century editions 
peters scores)

beam-quanting.cc
-) don't pay attention to line 411ish (it has lots of printfs commented out - 
if this is really distracting, I can get it out of the patch, but I don't like 
retyping this stuff every time I have to hunt for errors)
-) account_for_extremal_hangover () and 
update_x_span_after_extremal_hangover_compensation () are there to make sure 
broken beams' quanting figures out y coordinates at the beam's extremes instead 
of between the first and last normal slope (this is standard practice in all 
major editions but thus far missing in LilyPond).

Everything else represents little modifications needed to make the new x-span 
stuff work.

Take it for a spin!  I think you'll like your Scirabin example with it :)

Cheers,
MS
_______________________________________________
lilypond-devel mailing list
lilypond-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-devel

Reply via email to