@libraz/libcantus - v1.1.0
    Preparing search index...

    Function isForbiddenMelodicLeap

    • Whether a melodic move is a forbidden leap.

      Forbidden are the seventh in either quality, any leap wider than an octave, and — where the spelling is known — every augmented and diminished interval, the augmented second of the harmonic minor among them. Given MIDI integers the tritone is still caught, since it is forbidden under either spelling, but an augmented second is indistinguishable from a minor third and passes.

      The raw distance is used for the octave check, so a compound leap is not reduced to its simple class first.

      Parameters

      Returns boolean

      True when the leap is forbidden in strict counterpoint.

      import { isForbiddenMelodicLeap, parseNote } from '@libraz/libcantus';
      isForbiddenMelodicLeap(parseNote('Ab4'), parseNote('B4')); // true — augmented second
      isForbiddenMelodicLeap(68, 71); // false — the same pitches read as a minor third
    • Whether a melodic move is a forbidden leap.

      Forbidden are the seventh in either quality, any leap wider than an octave, and — where the spelling is known — every augmented and diminished interval, the augmented second of the harmonic minor among them. Given MIDI integers the tritone is still caught, since it is forbidden under either spelling, but an augmented second is indistinguishable from a minor third and passes.

      The raw distance is used for the octave check, so a compound leap is not reduced to its simple class first.

      Parameters

      • prev: number

        Starting note.

      • cur: number

        Ending note.

      Returns boolean

      True when the leap is forbidden in strict counterpoint.

      import { isForbiddenMelodicLeap, parseNote } from '@libraz/libcantus';
      isForbiddenMelodicLeap(parseNote('Ab4'), parseNote('B4')); // true — augmented second
      isForbiddenMelodicLeap(68, 71); // false — the same pitches read as a minor third