class Note
Attributes
dur[R]
note[R]
octave[R]
velocity[R]
Public Class Methods
new(degree, octave, velocity, dur)
click to toggle source
# File lib/kuromusic/Track/Measure/Chord/Note.rb, line 18 def initialize(degree, octave, velocity, dur) @degree = degree @octave = octave @dur = dur @velocity = velocity end
Public Instance Methods
get_off_event(key)
click to toggle source
# File lib/kuromusic/Track/Measure/Chord/Note.rb, line 30 def get_off_event(key) gdeg, goct = get_gdeg_and_goct(key) Event::Note::off(Key::degree_to_key(gdeg), goct) end
get_on_event(key)
click to toggle source
# File lib/kuromusic/Track/Measure/Chord/Note.rb, line 25 def get_on_event(key) gdeg, goct = get_gdeg_and_goct(key) Event::Note::on(Key::degree_to_key(gdeg), goct, @velocity) end
inspect(key = nil)
click to toggle source
# File lib/kuromusic/Track/Measure/Chord/Note.rb, line 35 def inspect(key = nil) if key.nil? "<:degree=>" + @degree.to_s + ", :octave=>" + @octave.to_s + ", :velocity:=>" + @velocity.to_s + ", :duration=>" + @dur.to_s + ">" else gdeg, goct = get_gdeg_and_goct(key) "<:note=>" + Key::degree_to_key(gdeg) + ", :octave=>" + goct.to_s + ", :velocity:=>" + @velocity.to_s + ", :duration=>" + @dur.to_s + ">" end end
Private Instance Methods
get_gdeg_and_goct(key)
click to toggle source
# File lib/kuromusic/Track/Measure/Chord/Note.rb, line 6 def get_gdeg_and_goct(key) key_n = Key::key_to_degree(key) gdeg = (key_n + @degree) % 12 if gdeg < 0 goct = @octave - 1 else goct = @octave + (key_n + @degree) / 12 end return gdeg, goct end