public Chord(NoteLetter key, MajorMinor majorMinor) { _key = key; _majorMinor = majorMinor; _baseNotes = new List <NoteLetter>(); _addedNotes = new List <NoteLetter>(); }
public ChordSongInterpreter(NoteLetter key, MajorMinor majorMinor, int sampleRate, int beatsPerMinute, int beatsPerMeasure) { _key = key; _majorMinor = majorMinor; _sampleRate = sampleRate; _tempo = beatsPerMinute; _timeSignature = beatsPerMeasure; _fallbackInterpreter = new DefaultSongInterpreter(sampleRate, beatsPerMinute, beatsPerMeasure); SetupChordLookup(); }
public SixChord(NoteLetter key, MajorMinor majorMinor) : base(key, majorMinor) { if (_majorMinor == MajorMinor.Major) { _baseNotes = new List <NoteLetter>(3) { AddHalfSteps(key, 9), AddHalfSteps(key, 12), AddHalfSteps(key, 16) }; } else { _baseNotes = new List <NoteLetter>(3) { AddHalfSteps(key, 9), AddHalfSteps(key, 13), AddHalfSteps(key, 16) }; } }
public TwoChord(NoteLetter key, MajorMinor majorMinor) : base(key, majorMinor) { if (_majorMinor == MajorMinor.Major) { _baseNotes = new List <NoteLetter>(3) { AddHalfSteps(key, 2), AddHalfSteps(key, 5), AddHalfSteps(key, 9) }; } else { _baseNotes = new List <NoteLetter>(3) { AddHalfSteps(key, 2), AddHalfSteps(key, 5), AddHalfSteps(key, 8) }; } }
public ThreeChord(NoteLetter key, MajorMinor majorMinor) : base(key, majorMinor) { if (_majorMinor == MajorMinor.Major) { _baseNotes = new List <NoteLetter>(3) { AddHalfSteps(key, 4), AddHalfSteps(key, 7), AddHalfSteps(key, 11) }; } else { _baseNotes = new List <NoteLetter>(3) { AddHalfSteps(key, 4), AddHalfSteps(key, 8), AddHalfSteps(key, 11) }; } }
public SevenChord(NoteLetter key, MajorMinor majorMinor) : base(key, majorMinor) { if (_majorMinor == MajorMinor.Major) { _baseNotes = new List <NoteLetter>(3) { AddHalfSteps(key, 11), AddHalfSteps(key, 14), AddHalfSteps(key, 17) }; } else { _baseNotes = new List <NoteLetter>(3) { AddHalfSteps(key, 11), AddHalfSteps(key, 15), AddHalfSteps(key, 18) }; } }
public IList <Note> GetNotes(Inversion inversion, short lowestOctave) { var notes = new List <Note>(_baseNotes.Count); NoteLetter prevNote = NoteLetter.C; // Set to lowest note so first note in chord gets lowest octave short currentOctave = lowestOctave; for (int i = 0; i < _baseNotes.Count; ++i) { var noteLetter = _baseNotes[((int)inversion + i) % _baseNotes.Count]; if (prevNote > noteLetter) { currentOctave++; } notes.Add(new Note(noteLetter, currentOctave)); prevNote = noteLetter; } return(notes); }
public Note(NoteLetter letter, int octave, bool black, ComponentLength length, int x, int absoluteX) : base(length, x, (int)letter, absoluteX, octave) { this.Black = black; }
public static NoteLetter AddWholeSteps(NoteLetter note, int wholeSteps) { return(AddHalfSteps(note, WholeStepsToHalfSteps[wholeSteps % 7])); }
public static NoteLetter AddHalfSteps(NoteLetter note, int halfSteps) { return((NoteLetter)(((int)note + halfSteps) % DistinctNotes)); }
public Note(NoteLetter letter, short octave) { Letter = letter; Octave = octave; }
public ChordSongInterpreter(NoteLetter key, int sampleRate, ISongInterpreter fallbackInterpreter) { _key = key; _sampleRate = sampleRate; _fallbackInterpreter = fallbackInterpreter; }