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