@sudobility/music_drawing 0.0.44 → 0.0.46

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,4 +1,23 @@
1
+ /**
2
+ * Windowed canvas score renderer (spec: canvas-notation-renderer design):
3
+ * draws ONLY the systems intersecting the caller's viewport into a
4
+ * caller-managed 2D context, through VexFlow's `CanvasContext`. Per-frame
5
+ * cost is O(visible systems); the one O(n) pass (`computeLayout`) is cached
6
+ * and reused until score/zoom/layout-mode/width/trackIds change — a
7
+ * viewport change alone never recomputes layout.
8
+ *
9
+ * No DOM anywhere: bounding boxes come from the VexFlow objects themselves
10
+ * (`element.getBoundingBox()`), in zoom-scaled CSS px, content coordinates.
11
+ * The theme foreground is set as the context's fill/stroke before drawing.
12
+ * A draw failure in one system logs and skips that system, and the rest
13
+ * still draw — a corrupt measure must not blank the whole canvas.
14
+ *
15
+ * Pure canvas adapter: no store/React imports (spec §3, §37).
16
+ */
17
+ import { Stave, MultiMeasureRest } from 'vexflow';
18
+ import type { Beam, Tuplet, Voice } from 'vexflow';
1
19
  import type { Score } from '@sudobility/music_types';
20
+ import type { Channel } from './measure-content.js';
2
21
  import type { LayoutPlan } from './layout.js';
3
22
  import type { BBox, RenderOptions, RenderTheme } from './types.js';
4
23
  import type { DrawingContext2D } from './drawing-context.js';
@@ -104,6 +123,95 @@ export type CanvasRenderResult = {
104
123
  plan: LayoutPlan;
105
124
  theme: RenderTheme;
106
125
  };
126
+ /**
127
+ * One measure column's built VexFlow objects, before any colour is applied:
128
+ * every track's stave for a single measure index, jointly formatted.
129
+ *
130
+ * The column, rather than the system, is the renderer's unit of reuse — see
131
+ * `columnFor`. It can be, because it is already the unit of *formatting*:
132
+ * `buildColumn` runs one `Formatter` over every track's voices for one measure
133
+ * index and nothing outside that measure takes part, so a built column is
134
+ * complete and its geometry cannot be changed by what happens to its
135
+ * neighbours.
136
+ */
137
+ type ColumnDrawing = {
138
+ measureIndex: number;
139
+ staves: Array<{
140
+ stave: Stave;
141
+ trackId: string;
142
+ }>;
143
+ /** Carried with its track, which decides the layer the voice is drawn in. */
144
+ voices: Array<{
145
+ voice: Voice;
146
+ trackId: string;
147
+ }>;
148
+ /**
149
+ * The stave is carried alongside, not asked of the beam's first note:
150
+ * `Voice.setStave()` does not reach its tickables, so a note only learns its
151
+ * stave when `voice.draw()` runs — and that is exactly what culling skips.
152
+ * Asking the note left `getStave()` undefined for every off-screen stave,
153
+ * whose `stave && ...` guard then fell through to draw an unformatted beam
154
+ * and threw `NoYValues`, losing the whole system.
155
+ */
156
+ beams: Array<{
157
+ beam: Beam;
158
+ trackId: string;
159
+ stave: Stave;
160
+ }>;
161
+ tuplets: Array<{
162
+ tuplet: Tuplet;
163
+ trackId: string;
164
+ stave: Stave;
165
+ }>;
166
+ rests: Array<{
167
+ rest: MultiMeasureRest;
168
+ trackId: string;
169
+ }>;
170
+ /** trackIndex -> this column's stave, for the brace on a system's first column. */
171
+ staveByTrackIndex: Map<number, Stave>;
172
+ /** trackId -> voiceOrdinal -> the notes this column contributed, in order. */
173
+ channels: Map<string, Map<number, Channel>>;
174
+ measureIdToBBox: Map<string, BBox>;
175
+ /** Whether track 0 has this measure — what `drawnMeasureIndices` reports. */
176
+ onTrackZero: boolean;
177
+ /**
178
+ * Event id -> bbox for this column's notes, filled in as they are drawn.
179
+ *
180
+ * Not filled at build time: VexFlow places a note when it draws it, and a
181
+ * note it has not drawn reports a box off the origin rather than no box at
182
+ * all. Once drawn the box never moves — the formatter placed it once, and
183
+ * the column is dropped when the plan that positioned it changes — so each
184
+ * is measured on the first frame that draws that note and kept. Staves are
185
+ * culled one at a time, so a column on a tall system fills in gradually as
186
+ * it is scrolled through, which is why this is a fill-in and not a one-shot.
187
+ */
188
+ bboxes: Map<string, BBox>;
189
+ /**
190
+ * Where notes actually begin and end in this measure, from VexFlow.
191
+ *
192
+ * The layout's `box` spans barline to barline, but a stave spends its left
193
+ * edge on whatever modifiers it carries — the clef and key signature every
194
+ * system restates, the time signature at the start of the piece and at each
195
+ * change, a repeat sign — and leaves clearance before the closing barline.
196
+ * Interpolating a tick across the *box* therefore places the caret left of
197
+ * the note it is pointing at, by a margin that grows with the furniture: a
198
+ * little in an ordinary bar, more in the first bar of a system, most in the
199
+ * first bar of the score.
200
+ *
201
+ * VexFlow is what knows the real numbers, and only once the modifiers are
202
+ * added and `formatBegModifiers` has aligned them across the column's
203
+ * staves — which is exactly where this is filled in.
204
+ */
205
+ noteArea: NoteArea | null;
206
+ /**
207
+ * Where this column's notes were placed, ascending by tick.
208
+ *
209
+ * Track 0's only: the playhead resolves a tick against the shared measure
210
+ * grid, which it reads from track 0 exactly as `caretPositionForTick` does,
211
+ * and every track of a column is formatted to the same note area anyway.
212
+ */
213
+ tickPositions: TickPosition[];
214
+ };
107
215
  type BoundingBoxLike = {
108
216
  getX(): number;
109
217
  getY(): number;
@@ -126,6 +234,30 @@ type NoteWithHeads = {
126
234
  } | undefined;
127
235
  };
128
236
  /** Returns the clickable event box, including VexFlow's individual heads. */
237
+ /**
238
+ * Keeps a tuplet's bracket and number inside the vertical gap that belongs to
239
+ * its own track, never past the midpoint shared with the track next to it.
240
+ *
241
+ * VexFlow's own `Tuplet.getYPosition()` places a TOP tuplet a font-metric
242
+ * distance above `stave.getYForLine(0)` (`Tuplet.metrics.topModifierOffset`)
243
+ * and a BOTTOM one the same distance below the bottom line — a distance fixed
244
+ * by the font, independent of how much room this layout actually put between
245
+ * stacked staves. Measured on a real score: that offset reached roughly 65
246
+ * (top) and 55 (bottom) logical units into a gap of about 80 between
247
+ * consecutive tracks — most of it, and on a track whose neighbor also has a
248
+ * tuplet reaching back, past all of it. The result was a "3" sitting inside
249
+ * an entirely different instrument's row, not a spacing choice anyone made —
250
+ * `TRACK_GAP` was never sized with a tuplet number in mind, because before
251
+ * `flushTripletRun` gave leftover runs their own bracket almost no tuplet
252
+ * ever rendered to expose it.
253
+ *
254
+ * `Tuplet` has no public setter for the `y_offset` its constructor takes, so
255
+ * the correction is written directly onto `tuplet.options` — the same shape
256
+ * of reach-in `vexCtx.setFillStyle` above is, for a gap in the same class's
257
+ * API. Only ever pulls a tuplet BACK toward its own stave; a tuplet already
258
+ * inside its safe band is untouched.
259
+ */
260
+ export declare function clampTupletToItsOwnRow(tuplet: Tuplet, trackId: string, column: ColumnDrawing): void;
129
261
  export declare function eventBBoxForNote(note: NoteWithHeads, z: number): BBox | null;
130
262
  /**
131
263
  * Where the instrument row's text and icon go, relative to the stave's top line.
@@ -1 +1 @@
1
- {"version":3,"file":"canvas-renderer.d.ts","sourceRoot":"","sources":["../src/canvas-renderer.ts"],"names":[],"mappings":"AAyCA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,yBAAyB,CAAC;AAoBrD,OAAO,KAAK,EAAE,UAAU,EAAgB,MAAM,aAAa,CAAC;AAG5D,OAAO,KAAK,EAAE,IAAI,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAEnE,OAAO,KAAK,EAAE,gBAAgB,EAAmB,MAAM,sBAAsB,CAAC;AAE9E;;;;;;GAMG;AACH,MAAM,MAAM,cAAc,GAAG;IAC3B,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG,aAAa,GAAG;IAChD,QAAQ,EAAE,cAAc,CAAC;IACzB,2IAA2I;IAC3I,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B;;;;;;;;;;;;;;;;;;OAkBG;IACH,KAAK,CAAC,EAAE,WAAW,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG,KAAK,GAAG,MAAM,GAAG,SAAS,CAAC;AAErD;;;;;;;;;;;;;;GAcG;AACH,MAAM,MAAM,QAAQ,GAAG;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,kEAAkE;AAClE,MAAM,MAAM,YAAY,GAAG;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,CAAC,EAAE,MAAM,CAAC;CACX,CAAC;AAEF;;;;;;;;;;;;;;;GAeG;AACH,MAAM,MAAM,oBAAoB,GAAG;IACjC,IAAI,EAAE,QAAQ,CAAC;IACf,4EAA4E;IAC5E,SAAS,EAAE,YAAY,EAAE,CAAC;CAC3B,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,sHAAsH;IACtH,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAC5B,yHAAyH;IACzH,eAAe,EAAE,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IACnC;;;;;;OAMG;IACH,oBAAoB,EAAE,GAAG,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAAC;IACxD,mBAAmB,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACjC,mEAAmE;IACnE,IAAI,EAAE,UAAU,CAAC;IACjB,KAAK,EAAE,WAAW,CAAC;CACpB,CAAC;AAwLF,KAAK,eAAe,GAAG;IACrB,IAAI,IAAI,MAAM,CAAC;IACf,IAAI,IAAI,MAAM,CAAC;IACf,IAAI,IAAI,MAAM,CAAC;IACf,IAAI,IAAI,MAAM,CAAC;CAChB,CAAC;AAEF,KAAK,aAAa,GAAG;IACnB,cAAc,IAAI,eAAe,GAAG,SAAS,CAAC;IAC9C,SAAS,CAAC,EAAE,SAAS;QAAE,cAAc,IAAI,eAAe,GAAG,SAAS,CAAA;KAAE,EAAE,CAAC;IACzE,iBAAiB,CAAC,EAAE,MAAM;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC;IAC9D,iBAAiB,CAAC,EAAE,MAAM,MAAM,CAAC;IACjC,eAAe,CAAC,EAAE,MAAM,MAAM,CAAC;IAC/B,QAAQ,CAAC,EAAE,MAAM;QAAE,sBAAsB,CAAC,EAAE,MAAM,MAAM,CAAA;KAAE,GAAG,SAAS,CAAC;CACxE,CAAC;AAEF,6EAA6E;AAC7E,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,aAAa,EAAE,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI,CAmD5E;AA4FD;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,kBAAkB,CAChC,YAAY,EAAE,MAAM,EACpB,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,GACf;IAAE,YAAY,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CAM9D;AA2ED,qBAAa,mBAAmB;IAC9B,OAAO,CAAC,KAAK,CAKG;IAChB;;;;;;;;;;;;;;;OAeG;IACH,OAAO,CAAC,OAAO,CAAoC;IACnD,OAAO,CAAC,WAAW,CAA2B;IAC9C;;;;;OAKG;IACH,OAAO,CAAC,MAAM,CAA4B;IAC1C,qGAAqG;IACrG,OAAO,CAAC,aAAa,CAAoC;IAEzD,OAAO,CAAC,OAAO;IAcf;;;;;OAKG;IACH,OAAO,CAAC,SAAS;IAqBjB,mFAAmF;IACnF,OAAO,CAAC,YAAY;IAapB;;;;;;;;;;;;;;;OAeG;IACH,OAAO,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,mBAAmB,EAAE,KAAK,SAAI,GAAG,MAAM;IA0CtE,MAAM,CACJ,KAAK,EAAE,KAAK,EACZ,GAAG,EAAE,gBAAgB,EACrB,OAAO,EAAE,mBAAmB,GAC3B,kBAAkB;IA0DrB;;;;;OAKG;IACH,OAAO,CAAC,cAAc;IAKtB,6EAA6E;IAC7E,OAAO,CAAC,qBAAqB;IAkB7B,6EAA6E;IAC7E,OAAO,CAAC,SAAS;IAsEjB;;;;OAIG;IACH,OAAO,CAAC,YAAY;IAwCpB,OAAO,CAAC,SAAS;IAiCjB;;;;;;;;OAQG;IACH,OAAO,CAAC,WAAW;IA8BnB;;;OAGG;IACH,OAAO,CAAC,WAAW;IA0FnB;;;;;;;;OAQG;IACH,OAAO,CAAC,UAAU;IAmClB;;;;;;;;;;;;;;OAcG;IACH,OAAO,CAAC,mBAAmB;IA0J3B;;;;;;;;;;;OAWG;IACH,OAAO,CAAC,SAAS;IAqBjB,0EAA0E;IAC1E,OAAO,CAAC,qBAAqB;IAe7B;;;OAGG;IACH,OAAO,CAAC,aAAa;IAWrB;;;;;;;;OAQG;IACH,OAAO,CAAC,WAAW;IAQnB,4EAA4E;IAC5E,OAAO,CAAC,UAAU;IAKlB,OAAO,CAAC,OAAO;IAIf,8EAA8E;IAC9E,OAAO,CAAC,QAAQ;IAMhB,OAAO,CAAC,YAAY;IAUpB,OAAO,CAAC,UAAU;IAOlB,OAAO,CAAC,eAAe;IASvB,OAAO,CAAC,qBAAqB;IAI7B,wFAAwF;IACxF,OAAO,CAAC,eAAe;IAgBvB;;;;;;OAMG;IACH,OAAO,CAAC,qBAAqB;IAuC7B;;;;;;;;;;;;;;;;;;OAkBG;IACH,OAAO,CAAC,WAAW;IA8LnB;;;;;;;;;OASG;IACH,OAAO,CAAC,mBAAmB;IAsC3B;;;;;;OAMG;IACH,OAAO,CAAC,eAAe;IAoIvB;;;;;OAKG;IACH,OAAO,CAAC,kBAAkB;IAkC1B,oEAAoE;IACpE,OAAO,CAAC,mBAAmB;IAuC3B;;;;;;;;;;;;;OAaG;IACH,OAAO,CAAC,qBAAqB;IAsC7B;;;;;;;;;;;;;;OAcG;IACH,OAAO,CAAC,iBAAiB;IA8CzB,OAAO,IAAI,IAAI;CAOhB"}
1
+ {"version":3,"file":"canvas-renderer.d.ts","sourceRoot":"","sources":["../src/canvas-renderer.ts"],"names":[],"mappings":"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"}
@@ -60,6 +60,57 @@ function tickPositionsFor(column, trackZeroId, startTickByEventId) {
60
60
  .sort((a, b) => a.tick - b.tick);
61
61
  }
62
62
  /** Returns the clickable event box, including VexFlow's individual heads. */
63
+ /**
64
+ * Keeps a tuplet's bracket and number inside the vertical gap that belongs to
65
+ * its own track, never past the midpoint shared with the track next to it.
66
+ *
67
+ * VexFlow's own `Tuplet.getYPosition()` places a TOP tuplet a font-metric
68
+ * distance above `stave.getYForLine(0)` (`Tuplet.metrics.topModifierOffset`)
69
+ * and a BOTTOM one the same distance below the bottom line — a distance fixed
70
+ * by the font, independent of how much room this layout actually put between
71
+ * stacked staves. Measured on a real score: that offset reached roughly 65
72
+ * (top) and 55 (bottom) logical units into a gap of about 80 between
73
+ * consecutive tracks — most of it, and on a track whose neighbor also has a
74
+ * tuplet reaching back, past all of it. The result was a "3" sitting inside
75
+ * an entirely different instrument's row, not a spacing choice anyone made —
76
+ * `TRACK_GAP` was never sized with a tuplet number in mind, because before
77
+ * `flushTripletRun` gave leftover runs their own bracket almost no tuplet
78
+ * ever rendered to expose it.
79
+ *
80
+ * `Tuplet` has no public setter for the `y_offset` its constructor takes, so
81
+ * the correction is written directly onto `tuplet.options` — the same shape
82
+ * of reach-in `vexCtx.setFillStyle` above is, for a gap in the same class's
83
+ * API. Only ever pulls a tuplet BACK toward its own stave; a tuplet already
84
+ * inside its safe band is untouched.
85
+ */
86
+ export function clampTupletToItsOwnRow(tuplet, trackId, column) {
87
+ // `location` is `protected` in VexFlow's own .d.ts and there is no public
88
+ // getter for it (`setTupletLocation` has no `get` counterpart) — a plain
89
+ // runtime property under a compile-time-only restriction, the same shape of
90
+ // gap `options.y_offset` below is.
91
+ const access = tuplet;
92
+ const index = column.staves.findIndex(s => s.trackId === trackId);
93
+ if (index < 0)
94
+ return;
95
+ const isTop = access.location === 1; // Tuplet.LOCATION_TOP
96
+ const neighbor = isTop
97
+ ? column.staves[index - 1]?.stave
98
+ : column.staves[index + 1]?.stave;
99
+ if (!neighbor)
100
+ return;
101
+ const stave = column.staves[index].stave;
102
+ const safeBound = isTop
103
+ ? (stave.getYForLine(0) + neighbor.getYForLine(4)) / 2
104
+ : (stave.getYForLine(4) + neighbor.getYForLine(0)) / 2;
105
+ const unclampedY = tuplet.getYPosition();
106
+ const overshoot = isTop ? safeBound - unclampedY : unclampedY - safeBound;
107
+ if (overshoot <= 0)
108
+ return;
109
+ // TOP: the correction is ADDED, pulling Y (smaller = higher) back DOWN
110
+ // toward the bound. BOTTOM: SUBTRACTED, pulling Y back UP.
111
+ access.options.y_offset =
112
+ (access.options.y_offset ?? 0) + overshoot * access.location;
113
+ }
63
114
  export function eventBBoxForNote(note, z) {
64
115
  try {
65
116
  if (note.getNoteHeadBounds &&
@@ -1336,17 +1387,33 @@ export class CanvasScoreRenderer {
1336
1387
  Brackets and their numbers, drawn after the beams they sit beside and
1337
1388
  culled to visible staves for the same reason everything else is: a
1338
1389
  tuplet takes its position from notes that must already have been drawn.
1390
+
1391
+ `tuplet.setStyle(...)` is set but never read: VexFlow's `Tuplet.draw()`
1392
+ (unlike `Beam.draw()`, which calls `applyStyle()`/`restoreStyle()`) never
1393
+ calls either, so the style sat on the object having no effect at all —
1394
+ the "3" always drew in whatever colour the context was last left in,
1395
+ which on a track that is not active was the wrong one. Its number glyphs
1396
+ have no style of their OWN either (`resolveGlyphs()` never calls
1397
+ `glyph.setStyle`), so `Glyph.render()`'s own `applyStyle` is a no-op too
1398
+ and it just inherits the context's ambient fill colour — which is
1399
+ exactly what setting it directly, the same way `rest` a few lines above
1400
+ already has to, puts there on purpose.
1339
1401
  */
1340
1402
  for (const column of columns) {
1341
1403
  for (const { tuplet, trackId, stave } of column.tuplets) {
1342
1404
  if (!include(trackId) || !visibleStaves.has(stave))
1343
1405
  continue;
1344
1406
  const color = this.trackColor(this.notesDimmed(trackId, options), options);
1345
- tuplet.setStyle({ fillStyle: color, strokeStyle: color });
1407
+ vexCtx.setFillStyle(color);
1408
+ vexCtx.setStrokeStyle(color);
1409
+ clampTupletToItsOwnRow(tuplet, trackId, column);
1346
1410
  tuplet.setContext(vexCtx);
1347
1411
  tuplet.draw();
1348
1412
  }
1349
1413
  }
1414
+ const ink = this.inkColor(options);
1415
+ vexCtx.setFillStyle(ink);
1416
+ vexCtx.setStrokeStyle(ink);
1350
1417
  }
1351
1418
  /**
1352
1419
  * Tints every selected measure across the full height of the system.
@@ -1 +1 @@
1
- {"version":3,"file":"canvas-renderer.js","sourceRoot":"","sources":["../src/canvas-renderer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"canvas-renderer.js","sourceRoot":"","sources":["../src/canvas-renderer.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"convert.d.ts","sourceRoot":"","sources":["../src/convert.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AACH,OAAO,EAUL,SAAS,EAEV,MAAM,SAAS,CAAC;AACjB,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAC7C,OAAO,KAAK,EAGV,OAAO,IAAI,aAAa,EAExB,MAAM,IAAI,YAAY,EAEtB,YAAY,EACZ,YAAY,EAEZ,KAAK,EACL,YAAY,EACb,MAAM,yBAAyB,CAAC;AAKjC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAcxD,0FAA0F;AAC1F,wBAAgB,aAAa,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM,CAElD;AAsBD,MAAM,MAAM,WAAW,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAA;CAAE,CAAC;AAWxD;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,MAAM,EACb,GAAG,EAAE,MAAM,EACX,OAAO,GAAE;IAAE,aAAa,CAAC,EAAE,OAAO,CAAA;CAAO,GACxC,WAAW,CAiBb;AAyFD,gHAAgH;AAChH,wBAAgB,qBAAqB,CAAC,EAAE,EAAE,YAAY,GAAG,MAAM,CAM9D;AA8CD,gHAAgH;AAChH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,YAAY,EAAE,GAAG,YAAY,EAAE,EAAE,CAY1E;AAED;;;;;;;;;GASG;AACH,MAAM,MAAM,MAAM,GAAG;IAAE,KAAK,EAAE,KAAK,CAAC;IAAC,QAAQ,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,OAAO,CAAA;CAAE,CAAC;AAE3E,gKAAgK;AAChK,MAAM,MAAM,QAAQ,GAAG;IACrB,kGAAkG;IAClG,KAAK,EAAE,MAAM,CAAC;IACd,sEAAsE;IACtE,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,oJAAoJ;IACpJ,QAAQ,EAAE,OAAO,CAAC;IAClB,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,OAAO,CAAC;IAChB,8EAA8E;IAC9E,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB;;;;;OAKG;IACH,SAAS,EAAE,OAAO,CAAC;IACnB,QAAQ,EAAE,OAAO,CAAC;IAClB;;;;;;;OAOG;IACH,YAAY,EAAE,aAAa,GAAG,IAAI,CAAC;IACnC,WAAW,EAAE,OAAO,CAAC;IACrB,iEAAiE;IACjE,WAAW,EAAE,YAAY,GAAG,IAAI,CAAC;IACjC,UAAU,EAAE,OAAO,CAAC;IACpB,2BAA2B;IAC3B,cAAc,EAAE,OAAO,CAAC;IACxB,aAAa,EAAE,OAAO,CAAC;CACxB,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IACzB;;;OAGG;IACH,SAAS,EAAE,aAAa,EAAE,CAAC;IAC3B;;;;;;;OAOG;IACH,aAAa,EAAE,CAAC,YAAY,GAAG,SAAS,CAAC,EAAE,CAAC;IAC5C,wEAAwE;IACxE,KAAK,EAAE,SAAS,EAAE,CAAC;IACnB,KAAK,EAAE,QAAQ,EAAE,CAAC;IAClB,2DAA2D;IAC3D,YAAY,EAAE,eAAe,EAAE,CAAC;CACjC,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;CACrB,CAAC;AAIF;;;;;;;;;;;;GAYG;AACH,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,YAAY,EAAE,EACtB,GAAG,EAAE,MAAM,EACX,UAAU,CAAC,EAAE,MAAM;AACnB;;;;GAIG;AACH,YAAY,UAAQ,GACnB,YAAY,CA0Wd"}
1
+ {"version":3,"file":"convert.d.ts","sourceRoot":"","sources":["../src/convert.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AACH,OAAO,EAUL,SAAS,EAEV,MAAM,SAAS,CAAC;AACjB,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAC7C,OAAO,KAAK,EAGV,OAAO,IAAI,aAAa,EAExB,MAAM,IAAI,YAAY,EAEtB,YAAY,EACZ,YAAY,EAEZ,KAAK,EACL,YAAY,EACb,MAAM,yBAAyB,CAAC;AAKjC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAoCxD,0FAA0F;AAC1F,wBAAgB,aAAa,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM,CAElD;AAsBD,MAAM,MAAM,WAAW,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAA;CAAE,CAAC;AAWxD;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,MAAM,EACb,GAAG,EAAE,MAAM,EACX,OAAO,GAAE;IAAE,aAAa,CAAC,EAAE,OAAO,CAAA;CAAO,GACxC,WAAW,CAiBb;AAiGD,gHAAgH;AAChH,wBAAgB,qBAAqB,CAAC,EAAE,EAAE,YAAY,GAAG,MAAM,CAM9D;AA8CD,gHAAgH;AAChH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,YAAY,EAAE,GAAG,YAAY,EAAE,EAAE,CAY1E;AAED;;;;;;;;;GASG;AACH,MAAM,MAAM,MAAM,GAAG;IAAE,KAAK,EAAE,KAAK,CAAC;IAAC,QAAQ,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,OAAO,CAAA;CAAE,CAAC;AAE3E,gKAAgK;AAChK,MAAM,MAAM,QAAQ,GAAG;IACrB,kGAAkG;IAClG,KAAK,EAAE,MAAM,CAAC;IACd,sEAAsE;IACtE,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,oJAAoJ;IACpJ,QAAQ,EAAE,OAAO,CAAC;IAClB,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,OAAO,CAAC;IAChB,8EAA8E;IAC9E,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB;;;;;OAKG;IACH,SAAS,EAAE,OAAO,CAAC;IACnB,QAAQ,EAAE,OAAO,CAAC;IAClB;;;;;;;OAOG;IACH,YAAY,EAAE,aAAa,GAAG,IAAI,CAAC;IACnC,WAAW,EAAE,OAAO,CAAC;IACrB,iEAAiE;IACjE,WAAW,EAAE,YAAY,GAAG,IAAI,CAAC;IACjC,UAAU,EAAE,OAAO,CAAC;IACpB,2BAA2B;IAC3B,cAAc,EAAE,OAAO,CAAC;IACxB,aAAa,EAAE,OAAO,CAAC;CACxB,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IACzB;;;OAGG;IACH,SAAS,EAAE,aAAa,EAAE,CAAC;IAC3B;;;;;;;OAOG;IACH,aAAa,EAAE,CAAC,YAAY,GAAG,SAAS,CAAC,EAAE,CAAC;IAC5C,wEAAwE;IACxE,KAAK,EAAE,SAAS,EAAE,CAAC;IACnB,KAAK,EAAE,QAAQ,EAAE,CAAC;IAClB,2DAA2D;IAC3D,YAAY,EAAE,eAAe,EAAE,CAAC;CACjC,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;CACrB,CAAC;AAIF;;;;;;;;;;;;GAYG;AACH,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,YAAY,EAAE,EACtB,GAAG,EAAE,MAAM,EACX,UAAU,CAAC,EAAE,MAAM;AACnB;;;;GAIG;AACH,YAAY,UAAQ,GACnB,YAAY,CA0Zd"}
package/dist/convert.js CHANGED
@@ -19,6 +19,27 @@ import { durationNameForTicks } from '@sudobility/music_types';
19
19
  import { crossHeadStemOffsets, percussionVexKey } from './percussion.js';
20
20
  import { pitchToMidi } from '@sudobility/music_types';
21
21
  import { TRIPLET_ACTUAL, TRIPLET_NORMAL } from '@sudobility/music_types';
22
+ /**
23
+ * The fewest members a leftover triplet run may still be given a VISIBLE
24
+ * bracket for.
25
+ *
26
+ * Two, not one: a tuplet bracket shows a RATIO, and one notehead cannot be a
27
+ * ratio of anything — VexFlow draws the number regardless of member count, so
28
+ * a 1-note "tuplet" would show a bare "3" sitting over a single ordinary-
29
+ * looking note, which is not notation a reader could make sense of. Two
30
+ * members, with the third genuinely absent (the beat's own content ends
31
+ * there, or something un-tripleted starts exactly where it would begin), is
32
+ * an established way to show "a triplet cut short by what follows" — unusual,
33
+ * but a reader can still see two equal, compressed notes and read the "3" as
34
+ * what it says.
35
+ *
36
+ * This is a display threshold ONLY. A lone leftover note below it still gets
37
+ * its exact tick value — see `flushTripletRun`'s `applyTickMultiplier` call —
38
+ * just with nothing drawn to say so. Lowering it to 1 would draw the
39
+ * nonsensical bracket above; raising it would leave 2-note remainders visibly
40
+ * uncorrected for no notational gain, since 2 notes already read sensibly.
41
+ */
42
+ const MIN_BRACKETED_REMAINDER = 2;
22
43
  /** `Pitch.accidental` (-2..2) -> VexFlow accidental suffix/code (`''` for natural, no glyph drawn). */
23
44
  const ACCIDENTAL_SUFFIX = {
24
45
  [-2]: 'bb',
@@ -100,10 +121,23 @@ function completeTripletGroupIndices(groups, ppq) {
100
121
  let runName = null;
101
122
  let runLength = 0;
102
123
  const flush = () => {
103
- for (let offset = 0; offset + TRIPLET_ACTUAL <= runLength; offset += TRIPLET_ACTUAL) {
124
+ let offset = 0;
125
+ for (; offset + TRIPLET_ACTUAL <= runLength; offset += TRIPLET_ACTUAL) {
104
126
  for (let i = 0; i < TRIPLET_ACTUAL; i += 1)
105
127
  indices.add(runStart + offset + i);
106
128
  }
129
+ // EVERY genuine triplet-duration group, remainder included down to a
130
+ // single note — this only decides whether `displaySegments` keeps the
131
+ // exact tick value (below) or decomposes it into an approximation no
132
+ // non-triplet duration can represent tick-exactly. Whether that exactness
133
+ // then shows as a visible bracket (2+ members) or a silent tick
134
+ // correction (a lone note — see `flushTripletRun`'s `MIN_BRACKETED_
135
+ // REMAINDER` comment) is a SEPARATE decision made there; the two must
136
+ // still agree on WHICH notes are triplet-exact, or `isCompleteTripletGroup`
137
+ // here says "decompose it" while the builder there is busy correcting the
138
+ // very same notes' ticks under the assumption they were preserved exact.
139
+ for (; offset < runLength; offset += 1)
140
+ indices.add(runStart + offset);
107
141
  runName = null;
108
142
  runLength = 0;
109
143
  };
@@ -251,7 +285,8 @@ isPercussion = false) {
251
285
  let tripletRunName = null;
252
286
  let tripletRunNoteIndices = [];
253
287
  const flushTripletRun = () => {
254
- for (let offset = 0; offset + TRIPLET_ACTUAL <= tripletRunNoteIndices.length; offset += TRIPLET_ACTUAL) {
288
+ let offset = 0;
289
+ for (; offset + TRIPLET_ACTUAL <= tripletRunNoteIndices.length; offset += TRIPLET_ACTUAL) {
255
290
  tupletGroups.push({
256
291
  start: tripletRunNoteIndices[offset],
257
292
  length: TRIPLET_ACTUAL,
@@ -259,6 +294,51 @@ isPercussion = false) {
259
294
  normalNotes: TRIPLET_NORMAL,
260
295
  });
261
296
  }
297
+ /*
298
+ A run that doesn't divide evenly by TRIPLET_ACTUAL still ends in real
299
+ triplet-duration notes — 1 or 2 of them, left over. They used to fall out
300
+ of every group here, which sent them through `displaySegments` WITHOUT
301
+ `preserveTriplet`, decomposing a tick length no non-triplet duration can
302
+ represent (see `ticksToVexDuration`'s doc). Measured on a real generated
303
+ part: an 8-note run of triplet-eighths (two complete triplets + 2
304
+ leftover, chunked here the old way) inflated one voice's ticks used from
305
+ a nominal 16384 to 24576 — 50% over capacity — which `Formatter.preFormat`
306
+ uses as `Voice.softmax`'s denominator, so it justified the bar's REAL
307
+ content into two-thirds of the width and left the rest visibly blank.
308
+
309
+ `Tuplet.num_notes`/`notes_occupied` do not have to match the member count
310
+ VexFlow actually draws (`setTuplet` multiplies every member by
311
+ notesOccupied/noteCount regardless), so a leftover group CAN take the
312
+ same 3:2 ratio as a full one and keep its exact tick value — but only
313
+ down to `MIN_BRACKETED_REMAINDER` (2) members get a VISIBLE bracket. A
314
+ "3" over a single notehead cannot show a ratio at all — there is nothing
315
+ for it to be a ratio of.
316
+
317
+ A lone leftover note still needs the SAME correct tick value, though —
318
+ an unbracketed note is a display choice, not permission to get its
319
+ timing wrong again. Scanned across one real published piece: 19 of 112
320
+ measures were still squeezed (several below 20% of their given width)
321
+ after only fixing runs of 2+, because a measure can scatter many
322
+ NON-adjacent lone leftovers — each too small alone to bracket, but their
323
+ inflation compounds exactly like a run's did. `applyTickMultiplier` is
324
+ the same call `Tuplet`'s own constructor makes via `setTuplet` — calling
325
+ it directly gives the note its exact scaled ticks with no `Tuplet`
326
+ object at all, so nothing is drawn: no bracket, no number, and (unlike
327
+ constructing a `Tuplet` and asking it not to show one) no way for a
328
+ later reader of this code to accidentally make it visible again.
329
+ */
330
+ const remainder = tripletRunNoteIndices.length - offset;
331
+ if (remainder >= MIN_BRACKETED_REMAINDER) {
332
+ tupletGroups.push({
333
+ start: tripletRunNoteIndices[offset],
334
+ length: remainder,
335
+ actualNotes: TRIPLET_ACTUAL,
336
+ normalNotes: TRIPLET_NORMAL,
337
+ });
338
+ }
339
+ else if (remainder === 1) {
340
+ notes[tripletRunNoteIndices[offset]]?.applyTickMultiplier(TRIPLET_NORMAL, TRIPLET_ACTUAL);
341
+ }
262
342
  tripletRunName = null;
263
343
  tripletRunNoteIndices = [];
264
344
  };
@@ -1 +1 @@
1
- {"version":3,"file":"convert.js","sourceRoot":"","sources":["../src/convert.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"convert.js","sourceRoot":"","sources":["../src/convert.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"measure-content.d.ts","sourceRoot":"","sources":["../src/measure-content.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"measure-content.d.ts","sourceRoot":"","sources":["../src/measure-content.ts"],"names":[],"mappings":"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"}
@@ -351,20 +351,26 @@ nextMeasure, ppq, channels, allMetas) {
351
351
  if (stemDirection !== undefined)
352
352
  for (const note of notes)
353
353
  note.setStemDirection(stemDirection);
354
- const vexVoice = new Voice({
355
- num_beats: measure.timeSignature.numerator,
356
- beat_value: measure.timeSignature.denominator,
357
- });
358
- // SOFT mode: don't throw if a voice's summed ticks don't exactly match
359
- // the time signature (e.g. the decomposeDuration nearest-duration
360
- // fallback for a non-standard remainder can be off by a few ticks).
361
- vexVoice.setMode(Voice.Mode.SOFT);
362
- vexVoice.addTickables(tickables);
363
- voices.push(vexVoice);
364
- beams.push(...beamsFor(tickables, stemDirection, beamOverrides));
365
354
  /*
366
- Triplet brackets, derived from the durations rather than stored. The
367
- ranges come from `buildVoiceContent`, after chords, spacers, and
355
+ Triplet brackets, derived from the durations rather than stored — BEFORE
356
+ the voice below, not after.
357
+
358
+ `new Tuplet(members, ...)` attaches itself to each member note
359
+ (`Tuplet.attach` -> `note.setTuplet` -> `applyTickMultiplier`), which
360
+ rescales that note's OWN `getTicks()` from its written duration to its
361
+ true tupleted one. `Voice.ticksUsed` is a running sum added to once, at
362
+ `addTickable()` time — not a live total re-read from the tickables — so
363
+ a voice built before its tuplets exist locks in the UNSCALED sum and
364
+ never corrects it. Measured: a single complete 3-note triplet-eighth
365
+ group, added to its voice before this reordering, left `ticksUsed` at
366
+ 18432 against a nominal 16384 (the three notes counted as three whole
367
+ written eighths, 3*2048, instead of their tupleted 3*1365.33). On a
368
+ measure with many triplets that inflation is what fed `Formatter`'s
369
+ `Voice.softmax` (keyed off `ticksUsed`, see its own comment) a total
370
+ well past the bar's real content, squeezing that content into a
371
+ fraction of the width a system had room to give it.
372
+
373
+ The ranges come from `buildVoiceContent`, after chords, spacers, and
368
374
  decomposition have already been resolved into drawn-note indices.
369
375
  */
370
376
  for (const group of noteTupletGroups) {
@@ -379,6 +385,17 @@ nextMeasure, ppq, channels, allMetas) {
379
385
  tuplet.setTupletLocation(stemDirection);
380
386
  tuplets.push(tuplet);
381
387
  }
388
+ const vexVoice = new Voice({
389
+ num_beats: measure.timeSignature.numerator,
390
+ beat_value: measure.timeSignature.denominator,
391
+ });
392
+ // SOFT mode: don't throw if a voice's summed ticks don't exactly match
393
+ // the time signature (e.g. the decomposeDuration nearest-duration
394
+ // fallback for a non-standard remainder can be off by a few ticks).
395
+ vexVoice.setMode(Voice.Mode.SOFT);
396
+ vexVoice.addTickables(tickables);
397
+ voices.push(vexVoice);
398
+ beams.push(...beamsFor(tickables, stemDirection, beamOverrides));
382
399
  const channel = channels.get(voiceOrdinal) ?? [];
383
400
  notes.forEach((note, i) => channel.push({ note, meta: metas[i] }));
384
401
  channels.set(voiceOrdinal, channel);
@@ -1 +1 @@
1
- {"version":3,"file":"measure-content.js","sourceRoot":"","sources":["../src/measure-content.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"measure-content.js","sourceRoot":"","sources":["../src/measure-content.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sudobility/music_drawing",
3
- "version": "0.0.44",
3
+ "version": "0.0.46",
4
4
  "description": "Canvas score rendering for Moosiac: layout, VexFlow drawing and the paint loop.",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -44,11 +44,11 @@
44
44
  "vexflow": "^4.2.5"
45
45
  },
46
46
  "peerDependencies": {
47
- "@sudobility/music_types": "^0.13.33"
47
+ "@sudobility/music_types": "^0.13.34"
48
48
  },
49
49
  "devDependencies": {
50
50
  "@eslint/js": "^9.38.0",
51
- "@sudobility/music_types": "^0.13.33",
51
+ "@sudobility/music_types": "^0.13.34",
52
52
  "@sudobility/types": "^1.9.67",
53
53
  "@tonejs/midi": "^2.0.28",
54
54
  "@types/jsdom": "^30.0.0",