fix(rendering): start continued ties/slurs after clef on new systems - #2800
Draft
GiovanniSlabs wants to merge 2 commits into
Draft
fix(rendering): start continued ties/slurs after clef on new systems#2800GiovanniSlabs wants to merge 2 commits into
GiovanniSlabs wants to merge 2 commits into
Conversation
When a tie or slur continues on a new system, the curve segment started at the very left edge of the staff, overlapping the clef and key signature. Anchor the continuation start at the first bar renderer's beatGlyphsStart instead, so it begins after the clef, key and time signatures as in standard engraving practice. Applies to both the final segment (TieGlyph.doLayout) and the full-system segments of multi-system slurs (ContinuationTieGlyph). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Covers the case where a tie ends on the first beat of a new system: the continuation stub must start after the clef and keep a minimum visible length. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
When a tie or slur continues on a new system, the curve segment started at the
very left edge of the staff, overlapping the clef and key signature. This PR
anchors the continuation start at the first bar renderer's
beatGlyphsStart,so it begins after the clef, key and time signatures as in standard engraving
practice.
Issues
Fixes #2799
Proposed changes
TieGlyph.doLayout,continuation branch) now starts at the end staff's first bar renderer
beatGlyphsStartinstead of the staff left edge. The anchor renderer wasalso switched from the start staff to the end staff, since the segment is
painted on the end system.
(
ContinuationTieGlyph.calculateStartX) use the same anchor.start of the beat area, so the continuation stub keeps a minimum length of
2 staff spaces (
smuflMetrics.oneStaffSpace) to stay visible. Happy toadjust if you prefer a different metric or approach for this minimum.
npm run test-accept-referenceand visually reviewed; a new visual test(
multi-system-tie-first-beat) covers the tie-ending-on-first-beat case.Checklist
Further details