lenmus / lomse

A C++ library for rendering, editing and playing back music scores.
MIT License
120 stars 28 forks source link

Fix importing and rendering cross-system beams #389

Closed dmitrio95 closed 1 year ago

dmitrio95 commented 1 year ago

This pull request contains patches necessary to support cross-system beams, which fixes #388 and other similar crashes. With these patches the relevant systems from the score referenced in #388 looks like this (note the beam between the last note of the first system and the first note of the second system): изображение

Apart from the changes that implement rendering cross-system beams, this pull request also improves importing cross-measure beams from MusicXML. Presence of cross-measure beams may lead to having multiple beams simultaneously open when parsing a MusicXML document, which can lead, without these changes, to some beams being mixed up: изображение

cecilios commented 1 year ago

Thank you. The code looks right to me, and all regression test are passed. I will merge.

dmitrio95 commented 1 year ago

Thanks for merging!