class Coltrane::Representation::Guitar::String
Attributes
guitar[R]
pitch[R]
Public Class Methods
new(pitch, guitar:)
click to toggle source
# File lib/coltrane/representation/guitar/string.rb, line 9 def initialize(pitch, guitar:) @guitar = guitar @pitch = pitch end
Public Instance Methods
+(fret)
click to toggle source
# File lib/coltrane/representation/guitar/string.rb, line 25 def +(fret) pitch + fret end
find(pitch_class, possible_frets: (0..guitar.frets).to_a)
click to toggle source
# File lib/coltrane/representation/guitar/string.rb, line 14 def find(pitch_class, possible_frets: (0..guitar.frets).to_a) output = [] n = 0 loop do f = (pitch_class.integer - pitch.integer) % 12 + 12 * n possible_frets.include?(f) ? output << Note.new(self, f) : break n += 1 end output end