Optionalrules: EngravingRulesProtectedboundingA grace note that no main note follows in its staff entry (e.g. the only note of its voice there), drawn as its own tickable of the voice. Unlike a grace note after its main note (VoiceEntry.GraceAfterMainNote), it keeps its timestamp.
The x of the centre of the column of note heads the notes are drawn in, relative to the voice entry like the positions of its notes: including the shift of all of them aside from another voice's notes, but not the shift of a single head beside the others (e.g. of a second in a chord), so the same for all notes of a chord. The column also has the heads of other voices that aren't moved aside from them, e.g. of a whole note beside a quarter note: its centre is that of the widest head. The fingerings of the notes are centred on it (see MusicSheetCalculator.calculateFingerings()). Set with the positions of the notes (see VexFlowStaffEntry.positionNotesAtNoteHeads()), undefined e.g. for a rest.
Contains octave shifts affecting this voice entry, caused by octave brackets.
ProtectedrulesApply custom noteheads from Note.CustomNoteheadVFCode. This should happen before color().
Sets the vertical borders of this voice entry to the bounding box of its Vexflow note, e.g. from the tip of an up-stem that a beam extended (see VexFlowMeasure.updateBeamedVoiceEntryBorders()) to the lowest note head. Keeps the position of the voice entry, which its notes are placed relative to (VexFlowMeasure.correctNotePositions()): the next render's calculateXPosition() puts the voice entry there again (applyBordersFromVexflow()) and calculates the bounding boxes with the notes still where this render placed them.
The y of the stave's top line where the note's bounding box was measured (0 in calculateXPosition()).
(Re-)color notes and stems by setting their Vexflow styles. Could be made redundant by a Vexflow PR, but Vexflow needs more solid and permanent color methods/variables for that See VexFlowConverter.StaveNote()
Returns whether this object is an instance of the class, e.g. isInstanceOfClass(GraphicalMeasure).
The class, or its name (e.g. GraphicalMeasure.name). A name is unreliable in minified builds: they rename the classes, and give different classes the same name, e.g. "a" to GraphicalMeasure and GraphicalNote.
Sort this entry's notes by pitch. Notes need to be sorted for Vexflow StaveNote creation. Note that Vexflow needs the reverse order, see VexFlowConverter.StaveNote().
Sort notes for vexflow (bottom to top), which needs them in the reverse order OSMD likes to have them. Note that sort() and reverse() replace the array in place, so to avoid changing the array one could copy it first, see sortedNotesCopyForVexflow() (commented), though copying the array is also unnecessary (time+memory) for now.
The graphical counterpart of a [[VoiceEntry]].