Skip to content

Commit 8ec2c22

Browse files
committed
Replaced extension notes by semitone offsets.
1 parent 091cc18 commit 8ec2c22

3 files changed

Lines changed: 4 additions & 6 deletions

File tree

packages/string-fingerings/fingerings.spec.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -156,7 +156,7 @@ const bassExtension = {
156156
{
157157
name: 'E',
158158
openNote: nn('E1'),
159-
additionalOpenNotes: [nn('D#1'), nn('D1'), nn('C#1'), nn('C1')]
159+
additionalOpenSemitones: [-1,-2,-3,-4],
160160
},
161161
{
162162
name: 'A',

packages/string-fingerings/fingerings.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -111,8 +111,8 @@ function* stopsForString<TString extends InstrumentString>(
111111
if (!instrumentString) return;
112112
const openNote = instrumentString.openNote as number
113113
const stopIndex = noteNumber - openNote
114-
const additionalOpenNotes = instrumentString.additionalOpenNotes ?? []
115-
114+
const additionalOpenSemitones = instrumentString.additionalOpenSemitones ?? []
115+
const additionalOpenNotes = additionalOpenSemitones.map((s) => s + openNote)
116116
if (stopIndex < 0 && !additionalOpenNotes.includes(noteNumber)) {
117117
console.debug(`${noteName(noteNumber)} is too low for ${instrumentString.name} string`)
118118
return

packages/string-fingerings/types.ts

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -31,9 +31,7 @@ export interface InstrumentString {
3131
/** Open string note as a MIDI number (middle C = 60) */
3232
openNote: number
3333
/** Additional open strings, as semitone offsets from the open string */
34-
additionalOpenSemitones: number[]
35-
/** Additional open strings, as a MIDI number (for low range extensions) */
36-
additionalOpenNotes?: number[]
34+
additionalOpenSemitones?: number[]
3735
/** Maximum number of semitones that can be stopped over the open string */
3836
stops?: number
3937
}

0 commit comments

Comments
 (0)