pymusicxml.score_components.GraceNote

class pymusicxml.score_components.GraceNote(pitch: Pitch | str, duration: Duration | str | float, ties: Optional[str] = None, notations=(), articulations=(), notehead: Optional[Union[Notehead, str]] = None, directions: Sequence[Direction] = (), stemless: bool = False, slashed=False, velocity: Optional[int] = None)[source]

Bases: Note

Subclass of Note representing a durationless grace note.

Parameters:
  • pitch – see Note

  • duration – see Note. This will be the displayed duration of the note, even though it takes up no metric space in the bar.

  • ties – see Note

  • notations – see Note

  • articulations – see Note

  • notations – see Note

  • articulations – see Note

  • notehead – see Note

  • directions – see Note

  • stemless – see Note

  • slashed – whether or not this grace note is rendered with a slash.

  • velocity – a note velocity (0-127) which gets passed along and used for playback by many applications

Inherited Methods

export_to_file(file_path[, pretty_print])

Exports this musical object (wrapped as a score) to the given file path.

min_denominator()

Minimum divisor of a quarter note that would be needed to represent the duration of this note accurately.

num_beams()

Returns the number of beams needed to represent this note's duration.

render()

Renders this component to a tuple of ElementTree.Element.

to_xml([pretty_print])

Renders this component to MusicXML, adding a version tag, but not wrapping it up as a full score.

view_in_software(command)

Uses the given terminal command to create a score out of this musical object, and open it in music notation software.

wrap_as_score()

Wraps this component in a Score so that it can be exported and viewed

Attributes

divisions

Subdivision used when representing this duration.

length_in_divisions

Length in terms of subdivisions.

starts_tie

Whether or not this note starts a tie.

stops_tie

Whether or not this note ends a tie.

true_length

True length in terms of the number of quarter notes, taking into tuplet time modification.

written_length

Written length in terms of the number of quarter notes.

property divisions: int

Subdivision used when representing this duration.

export_to_file(file_path: str, pretty_print: bool = True) None

Exports this musical object (wrapped as a score) to the given file path.

Parameters:
  • file_path – The path of the file we want to write to.

  • pretty_print – If True, breaks the MusicXML onto multiple lines, with indentation

property length_in_divisions: int

Length in terms of subdivisions. (See description of “divisions” attribute in Duration)

min_denominator() int

Minimum divisor of a quarter note that would be needed to represent the duration of this note accurately. For instance, a triplet quarter note would have min_denominator 3, since it is 2/3 of a quarter.

num_beams() int

Returns the number of beams needed to represent this note’s duration.

render() Sequence[Element]

Renders this component to a tuple of ElementTree.Element. (The reason for making it a tuple is that musical objects like chords are represented by several notes side by side, with all but the first containing a </chord> tag.)

property starts_tie

Whether or not this note starts a tie.

property stops_tie

Whether or not this note ends a tie.

to_xml(pretty_print: bool = False) str

Renders this component to MusicXML, adding a version tag, but not wrapping it up as a full score.

Parameters:

pretty_print – If True, breaks the MusicXML onto multiple lines, with indentation

property true_length: float

True length in terms of the number of quarter notes, taking into tuplet time modification. Returns 0 in the case of grace notes.

view_in_software(command: str) None

Uses the given terminal command to create a score out of this musical object, and open it in music notation software.

Parameters:

command – The terminal command corresponding to the software with which we want to open the score.

wrap_as_score() Score

Wraps this component in a Score so that it can be exported and viewed

property written_length: float

Written length in terms of the number of quarter notes.