Loading…
Loading…
Rule
Gradus GE-181 · cite this code — it is permanent. Rule id beam-never-spans-voices
A beam is a single voice's rhythmic grouping. Two voices that happen to move in identical rhythm on a shared stave (common in homorhythmic chorale writing) are still beamed SEPARATELY — each voice gets its own beam object, even if the two beams end up visually parallel and close together.
A beam object constructed from noteObjects drawn from two different voices' arrays, which would force both voices' notes onto one stem-side and destroy the two-voice reading entirely.
Universal engraving convention (Gould, Read, Ross); also structurally how VexFlow's `Beam.generateBeams` works — it operates on one voice's note array at a time and has no cross-voice grouping mode.
This rule can be decided from pitches, durations and voices — no layout required. A validator can check it before anything is drawn.
Gradus GE-181 — A beam group must never contain notes from two different voices, even when they share a stave and align rhythmically. Gradus Engraving Rulebook v1.0. https://gradusmusic.com/engraving/rule/beam-never-spans-voices
Rulebook v1.0 · text licensed CC-BY-4.0 · machine-readable at /api/v1/engraving/rules/beam-never-spans-voices