Class: Webern::Row
- Inherits:
-
Array
- Object
- Array
- Webern::Row
- Defined in:
- lib/webern/row.rb
Instance Method Summary collapse
- #draw(opts = {}) ⇒ Object
-
#initialize(*row) ⇒ Row
constructor
A new instance of Row.
- #inversion ⇒ Object
- #prime ⇒ Object
- #retrograde ⇒ Object
- #retrograde_inversion ⇒ Object
- #transpose(distance) ⇒ Object
- #write(format, opts = {}) ⇒ Object
- #zero ⇒ Object
- #zero! ⇒ Object
Constructor Details
#initialize(*row) ⇒ Row
Returns a new instance of Row.
3 4 5 6 |
# File 'lib/webern/row.rb', line 3 def initialize(*row) @row = row replace complete_row end |
Instance Method Details
#draw(opts = {}) ⇒ Object
40 41 42 |
# File 'lib/webern/row.rb', line 40 def draw(opts={}) Webern::Formatters::TextFormatter.new(self, opts).draw end |
#inversion ⇒ Object
16 17 18 |
# File 'lib/webern/row.rb', line 16 def inversion Row.new *self.map{|i| (12 - i) % 12} end |
#retrograde ⇒ Object
20 21 22 |
# File 'lib/webern/row.rb', line 20 def retrograde Row.new *self.reverse end |
#retrograde_inversion ⇒ Object
24 25 26 |
# File 'lib/webern/row.rb', line 24 def retrograde_inversion Row.new *self.retrograde.inversion end |
#transpose(distance) ⇒ Object
28 29 30 |
# File 'lib/webern/row.rb', line 28 def transpose(distance) Row.new *self.map{|i| (i + distance) % 12 } end |
#write(format, opts = {}) ⇒ Object
36 37 38 |
# File 'lib/webern/row.rb', line 36 def write(format, opts={}) Webern::Formatters.formatter(format).new(self, opts).write_to_file end |
#zero ⇒ Object
32 33 34 |
# File 'lib/webern/row.rb', line 32 def zero Row.new *self.map{|i| (i + 12 - self[0]) % 12} end |
#zero! ⇒ Object
8 9 10 |
# File 'lib/webern/row.rb', line 8 def zero! replace zero end |