From c3a552eb3ce56768a8262cd052ab60fcc97fcde1 Mon Sep 17 00:00:00 2001 From: Jared Johnson Date: Sun, 7 Jan 2024 10:20:49 -0500 Subject: [PATCH 1/5] Render lilypond33c --- .../33c-Spanners-Slurs_900px.png | Bin 0 -> 11329 bytes tests/integration/lilypond.test.ts | 2 +- 2 files changed, 1 insertion(+), 1 deletion(-) create mode 100644 tests/integration/__image_snapshots__/33c-Spanners-Slurs_900px.png diff --git a/tests/integration/__image_snapshots__/33c-Spanners-Slurs_900px.png b/tests/integration/__image_snapshots__/33c-Spanners-Slurs_900px.png new file mode 100644 index 0000000000000000000000000000000000000000..053d0c54d283ee5218c2b4098d6fb59a9f18f6c0 GIT binary patch literal 11329 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 { // { filename: '32d-Arpeggio.musicxml', width: 900 }, { filename: '33a-Spanners.musicxml', width: 900 }, { filename: '33b-Spanners-Tie.musicxml', width: 900 }, - // { filename: '33c-Spanners-Slurs.musicxml', width: 900 }, + { filename: '33c-Spanners-Slurs.musicxml', width: 900 }, // { filename: '33d-Spanners-OctaveShifts.musicxml', width: 900 }, // { filename: '33e-Spanners-OctaveShifts-InvalidSize.musicxml', width: 900 }, // { filename: '33f-Trill-EndingOnGraceNote.musicxml', width: 900 }, From ddb8a1ae59a55e3eecb48d80767e20f499ce4d67 Mon Sep 17 00:00:00 2001 From: Jared Johnson Date: Sun, 7 Jan 2024 10:42:55 -0500 Subject: [PATCH 2/5] Honor slur placement specification --- src/rendering/slur.ts | 9 +++++++++ .../33c-Spanners-Slurs_900px.png | Bin 11329 -> 11341 bytes 2 files changed, 9 insertions(+) diff --git a/src/rendering/slur.ts b/src/rendering/slur.ts index 3ff8a39aa..89852c7c2 100644 --- a/src/rendering/slur.ts +++ b/src/rendering/slur.ts @@ -22,6 +22,9 @@ export type SlurFragment = { type: SlurFragmentType; number: number; address: Address; + musicXML: { + slur: musicxml.Slur; + }; vexflow: { note: vexflow.Note; keyIndex: number; @@ -61,6 +64,7 @@ export class Slur { type: slurType, number: slur.getNumber(), address: data.address, + musicXML: { slur }, vexflow: { note: data.vexflow.staveNote, keyIndex: data.keyIndex, @@ -136,6 +140,11 @@ export class Slur { } private getSlurPlacement(): musicxml.AboveBelow { + const placement = this.fragments[0].musicXML.slur.getPlacement(); + if (placement) { + return placement; + } + const vfNote = util.first(this.fragments)?.vexflow.note; if (!vfNote) { return 'above'; diff --git a/tests/integration/__image_snapshots__/33c-Spanners-Slurs_900px.png b/tests/integration/__image_snapshots__/33c-Spanners-Slurs_900px.png index 053d0c54d283ee5218c2b4098d6fb59a9f18f6c0..37c66b1fb30e97204387163d178e212571b96263 100644 GIT binary patch literal 11341 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 Date: Mon, 8 Jan 2024 18:52:57 -0500 Subject: [PATCH 3/5] Account for extra width when rendering slurs --- src/rendering/score.ts | 8 ++--- src/rendering/slur.ts | 76 +++++++++++++++++++++++++++------------ src/rendering/spanners.ts | 8 ++++- 3 files changed, 64 insertions(+), 28 deletions(-) diff --git a/src/rendering/score.ts b/src/rendering/score.ts index 3d6187ccb..f51dcf38c 100644 --- a/src/rendering/score.ts +++ b/src/rendering/score.ts @@ -165,11 +165,11 @@ export class Score { beam.vexflow.beam?.setContext(vfContext).draw(); }); - // Draw vexflow.StaveTie elements for slurs. + // Draw vexflow.Curve elements for slurs. spannersRendering.slurs - .flatMap((slur) => slur.vexflow.tie) - .forEach((vfStaveTie) => { - vfStaveTie.setContext(vfContext).draw(); + .flatMap((slur) => slur.vexflow.curve) + .forEach((vfCurve) => { + vfCurve.setContext(vfContext).draw(); }); // Draw vexflow.StaveTie elements for ties. diff --git a/src/rendering/slur.ts b/src/rendering/slur.ts index 89852c7c2..956e9c9e3 100644 --- a/src/rendering/slur.ts +++ b/src/rendering/slur.ts @@ -6,11 +6,13 @@ import { SpannerMap } from './spannermap'; import { SpannerData } from './types'; import { Address } from './address'; +const SLUR_PADDING_PER_NOTE = 10; + /** The result of rendering a slur. */ export type SlurRendering = { type: 'slur'; vexflow: { - tie: vexflow.StaveTie; + curve: vexflow.Curve; }; }; @@ -99,33 +101,26 @@ export class Slur { } } + getExtraMeasureFragmentWidth(address: Address<'measurefragment'>): number { + return ( + this.fragments.filter((fragment) => fragment.address.isMemberOf('measurefragment', address)).length * + SLUR_PADDING_PER_NOTE + ); + } + /** Renders the slur. */ render(): SlurRendering { - const vfTieNotes: vexflow.TieNotes = {}; + const vfStartNote = util.first(this.fragments)!.vexflow.note; + const vfStopNote = util.last(this.fragments)!.vexflow.note; - for (let index = 0; index < this.fragments.length; index++) { - const fragment = this.fragments[index]; - const isFirst = index === 0; - const isLast = index === this.fragments.length - 1; + const vfCurveOptions = this.getVfCurveOptions(vfStartNote, vfStopNote); - // Iterating is not necessary, but it is cleaner than dealing with nulls. - if (isFirst) { - vfTieNotes.firstNote = fragment.vexflow.note; - vfTieNotes.firstIndexes = [fragment.vexflow.keyIndex]; - } - if (isLast) { - vfTieNotes.lastNote = fragment.vexflow.note; - vfTieNotes.lastIndexes = [fragment.vexflow.keyIndex]; - } - } - - const vfSlurDirection = this.getVfSlurDirection(); - const vfTie = new vexflow.StaveTie(vfTieNotes).setDirection(vfSlurDirection); + const vfCurve = new vexflow.Curve(vfStartNote, vfStopNote, vfCurveOptions); return { type: 'slur', vexflow: { - tie: vfTie, + curve: vfCurve, }, }; } @@ -134,9 +129,44 @@ export class Slur { return util.last(this.fragments)!; } - private getVfSlurDirection(): number { - const slurPlacement = this.getSlurPlacement(); - return conversions.fromAboveBelowToVexflowSlurDirection(slurPlacement); + private getVfCurveOptions(vfStartNote: vexflow.Note, vfStopNote: vexflow.Note): vexflow.CurveOptions { + const startStem = this.getStem(vfStartNote); + const stopStem = this.getStem(vfStopNote); + + let vfStartPosition: vexflow.CurvePosition | undefined = undefined; + let vfStopPosition: vexflow.CurvePosition | undefined = undefined; + + switch (this.getSlurPlacement()) { + case 'above': + if (startStem === 'up') { + vfStartPosition = vexflow.CurvePosition.NEAR_TOP; + } else if (startStem === 'down') { + vfStartPosition = vexflow.CurvePosition.NEAR_HEAD; + } + + if (stopStem === 'up') { + vfStopPosition = vexflow.CurvePosition.NEAR_TOP; + } else if (stopStem === 'down') { + vfStopPosition = vexflow.CurvePosition.NEAR_HEAD; + } + break; + + case 'below': + if (startStem === 'up') { + vfStartPosition = vexflow.CurvePosition.NEAR_HEAD; + } else if (startStem === 'down') { + vfStartPosition = vexflow.CurvePosition.NEAR_TOP; + } + + if (stopStem === 'up') { + vfStopPosition = vexflow.CurvePosition.NEAR_HEAD; + } else if (stopStem === 'down') { + vfStopPosition = vexflow.CurvePosition.NEAR_TOP; + } + break; + } + + return { position: vfStartPosition, positionEnd: vfStopPosition }; } private getSlurPlacement(): musicxml.AboveBelow { diff --git a/src/rendering/spanners.ts b/src/rendering/spanners.ts index fa7e92cc6..4e8a99922 100644 --- a/src/rendering/spanners.ts +++ b/src/rendering/spanners.ts @@ -37,7 +37,13 @@ export class Spanners { /** Returns the additional padding needed to accommodate some spanners. */ getExtraMeasureFragmentWidth(address: Address<'measurefragment'>): number { - return util.sum(this.tuplets.values().map((tuplet) => tuplet.getExtraMeasureFragmentWidth(address))); + const tupletExtraWidth = util.sum( + this.tuplets.values().map((tuplet) => tuplet.getExtraMeasureFragmentWidth(address)) + ); + + const slurExtraWidth = util.sum(this.slurs.values().map((slur) => slur.getExtraMeasureFragmentWidth(address))); + + return tupletExtraWidth + slurExtraWidth; } /** Extracts and processes all the spanners within the given data. */ From db8d7aa599d6b8b37fc088f97846cc8e9e900764 Mon Sep 17 00:00:00 2001 From: Jared Johnson Date: Mon, 15 Jan 2024 09:00:04 -0500 Subject: [PATCH 4/5] Render slurs that use the placement attribute --- src/rendering/score.ts | 2 +- src/rendering/slur.ts | 132 +++++++++++++++++++++++++++-------------- 2 files changed, 88 insertions(+), 46 deletions(-) diff --git a/src/rendering/score.ts b/src/rendering/score.ts index f51dcf38c..bd2728482 100644 --- a/src/rendering/score.ts +++ b/src/rendering/score.ts @@ -169,7 +169,7 @@ export class Score { spannersRendering.slurs .flatMap((slur) => slur.vexflow.curve) .forEach((vfCurve) => { - vfCurve.setContext(vfContext).draw(); + vfCurve?.setContext(vfContext).draw(); }); // Draw vexflow.StaveTie elements for ties. diff --git a/src/rendering/slur.ts b/src/rendering/slur.ts index 956e9c9e3..6c1653da5 100644 --- a/src/rendering/slur.ts +++ b/src/rendering/slur.ts @@ -6,13 +6,13 @@ import { SpannerMap } from './spannermap'; import { SpannerData } from './types'; import { Address } from './address'; -const SLUR_PADDING_PER_NOTE = 10; +const SLUR_PADDING_PER_NOTE = 20; /** The result of rendering a slur. */ export type SlurRendering = { type: 'slur'; vexflow: { - curve: vexflow.Curve; + curve: vexflow.Curve | null; }; }; @@ -36,6 +36,8 @@ export type SlurFragment = { /** The container for slurs. */ type SlurContainer = SpannerMap; +type CurveOpeningDirection = 'up' | 'down' | 'unknown'; + /** Represents a curved line that connects two or more different notes of varying pitch to indicate that they should be * played legato. */ @@ -110,12 +112,21 @@ export class Slur { /** Renders the slur. */ render(): SlurRendering { - const vfStartNote = util.first(this.fragments)!.vexflow.note; - const vfStopNote = util.last(this.fragments)!.vexflow.note; + const vfStartNote = this.fragments.find((fragment) => fragment.type === 'start')?.vexflow.note; + const vfStopNote = this.fragments.find((fragment) => fragment.type === 'stop')?.vexflow.note; + + if (!vfStartNote && !vfStopNote) { + return { + type: 'slur', + vexflow: { curve: null }, + }; + } - const vfCurveOptions = this.getVfCurveOptions(vfStartNote, vfStopNote); + const vfCurveOptions = this.getVfCurveOptions({ vexflow: { startNote: vfStartNote, stopNote: vfStopNote } }); - const vfCurve = new vexflow.Curve(vfStartNote, vfStopNote, vfCurveOptions); + // Partial curves are allowed, but the types disallow it: + // https://github.com/0xfe/vexflow/blob/8ddc8fa1a6d304a879e73830919fa17f3a9bdef4/src/curve.ts#L87 + const vfCurve = new vexflow.Curve(vfStartNote as any, vfStopNote as any, vfCurveOptions); return { type: 'slur', @@ -129,44 +140,71 @@ export class Slur { return util.last(this.fragments)!; } - private getVfCurveOptions(vfStartNote: vexflow.Note, vfStopNote: vexflow.Note): vexflow.CurveOptions { - const startStem = this.getStem(vfStartNote); - const stopStem = this.getStem(vfStopNote); - - let vfStartPosition: vexflow.CurvePosition | undefined = undefined; - let vfStopPosition: vexflow.CurvePosition | undefined = undefined; - - switch (this.getSlurPlacement()) { - case 'above': - if (startStem === 'up') { - vfStartPosition = vexflow.CurvePosition.NEAR_TOP; - } else if (startStem === 'down') { - vfStartPosition = vexflow.CurvePosition.NEAR_HEAD; - } - - if (stopStem === 'up') { - vfStopPosition = vexflow.CurvePosition.NEAR_TOP; - } else if (stopStem === 'down') { - vfStopPosition = vexflow.CurvePosition.NEAR_HEAD; - } - break; - - case 'below': - if (startStem === 'up') { - vfStartPosition = vexflow.CurvePosition.NEAR_HEAD; - } else if (startStem === 'down') { - vfStartPosition = vexflow.CurvePosition.NEAR_TOP; - } - - if (stopStem === 'up') { - vfStopPosition = vexflow.CurvePosition.NEAR_HEAD; - } else if (stopStem === 'down') { - vfStopPosition = vexflow.CurvePosition.NEAR_TOP; - } - break; - } - - return { position: vfStartPosition, positionEnd: vfStopPosition }; + private getVfCurveOptions(opts: { + vexflow: { startNote: vexflow.Note | undefined; stopNote: vexflow.Note | undefined }; + }): vexflow.CurveOptions { + const placement = this.getSlurPlacement(); + + const startStem = this.getStem(opts.vexflow.startNote); + const stopStem = this.getStem(opts.vexflow.stopNote); + + const startPosition = this.getVfCurvePosition(placement, startStem); + const stopPosition = this.getVfCurvePosition(placement, stopStem); + + const openingDirection = this.getCurveOpeningDirection(opts.vexflow.startNote, opts.vexflow.stopNote); + const invert = + (openingDirection === 'up' && placement === 'above') || (openingDirection === 'down' && placement === 'below'); + + return { + position: startPosition, + positionEnd: stopPosition, + invert, + }; + } + + private getVfCurvePosition( + placement: musicxml.AboveBelow, + stem: musicxml.Stem | undefined + ): vexflow.CurvePosition | undefined { + if (placement === 'above' && stem === 'up') { + return vexflow.CurvePosition.NEAR_TOP; + } + if (placement === 'above' && stem === 'down') { + return vexflow.CurvePosition.NEAR_HEAD; + } + if (placement === 'below' && stem === 'up') { + return vexflow.CurvePosition.NEAR_HEAD; + } + if (placement === 'below' && stem === 'down') { + return vexflow.CurvePosition.NEAR_TOP; + } + return undefined; + } + + private getCurveOpeningDirection( + startNote: vexflow.Note | undefined, + stopNote: vexflow.Note | undefined + ): CurveOpeningDirection { + let note: vexflow.Note; + + if (startNote && stopNote) { + note = stopNote; + } else if (startNote) { + note = startNote; + } else if (stopNote) { + note = stopNote; + } else { + return 'unknown'; + } + + switch (this.getStem(note)) { + case 'up': + return 'up'; + case 'down': + return 'down'; + default: + return 'unknown'; + } } private getSlurPlacement(): musicxml.AboveBelow { @@ -205,7 +243,11 @@ export class Slur { } } - private getStem(vfNote: vexflow.Note): musicxml.Stem { + private getStem(vfNote: vexflow.Note | undefined): musicxml.Stem | undefined { + if (!vfNote) { + return undefined; + } + // Calling getStemDirection will throw if there is no stem. // https://github.com/0xfe/vexflow/blob/7e7eb97bf1580a31171302b3bd8165f057b692ba/src/stemmablenote.ts#L118 try { From 8835400c68c8f2345019a9313237e6ad3f991e57 Mon Sep 17 00:00:00 2001 From: Jared Johnson Date: Mon, 15 Jan 2024 09:09:02 -0500 Subject: [PATCH 5/5] Update snapshots --- .../33a-Spanners_900px.png | Bin 46369 -> 54103 bytes .../33c-Spanners-Slurs_900px.png | Bin 11341 -> 13628 bytes 2 files changed, 0 insertions(+), 0 deletions(-) diff --git a/tests/integration/__image_snapshots__/33a-Spanners_900px.png b/tests/integration/__image_snapshots__/33a-Spanners_900px.png index 35dd0597e64df60dde05693281f1372b2064f179..105d1483312f7890e631782b475385a3da972dd1 100644 GIT binary patch literal 54103 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 WdarNM^uxe#V(@hJb6Mw<&;$S%u86+? literal 46369 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

X@23;0%fg-7?OzwQg$&^<3$e{u@m*i?~=%|--1 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 diff --git a/tests/integration/__image_snapshots__/33c-Spanners-Slurs_900px.png b/tests/integration/__image_snapshots__/33c-Spanners-Slurs_900px.png index 37c66b1fb30e97204387163d178e212571b96263..6fe25075840eade1bb019e7ada9f2ca7cd0ac6c0 100644 GIT binary patch literal 13628 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