parseScientificNotation static method
Implementation
static Pitch parseScientificNotation(String pitchName) {
final match = _scientificPitchNamePattern.matchAsPrefix(pitchName);
if (match == null)
throw new FormatException("not in scientific notation: $pitchName");
final String naturalName = match[1]!;
final String accidentals = match[2]!;
final String octaveName = match[3]!;
final int pitch = noteNames.indexOf(naturalName.toUpperCase());
final int accidentalSemitones = parseAccidentals(accidentals);
final int octave = int.parse(octaveName);
return new Pitch(
chromaticIndex: pitch,
accidentalSemitones: accidentalSemitones,
octave: octave);
}