[![Build Status](https://travis-ci.org/samgwise/p6-ScaleVec.svg?branch=master)](https://travis-ci.org/samgwise/p6-ScaleVec) NAME ==== ScaleVec - A flexible yet accurate music representation system. SYNOPSIS ======== use ScaleVec; my ScaleVec $major-scale .= new( :vector(0, 2, 4, 5, 7, 9, 11, 12) ); # Midi notes 0 - 127 with our origin on middle C (for most midi specs) use ScaleVec::Scale::Fence; my ScaleVec::Scale::Fence $midi .= new( :vector(60, 61) :repeat-interval(12) :lower-limit(0) :upper-limit(127) ); # A two octave C major scale in midi note values say do for -7..7 { $midi.step: $major-scale.step($_) } DESCRIPTION =========== Encapsulating the power of linear algebra in an easy to use music library, ScaleVec provides a way to represent musical structures such as chords, rhythms, scales and tempos with a common format. CONTRIBUTIONS ============= To contribute, head to the github page: https://github.com/samgwise/p6-ScaleVec AUTHOR ====== Sam Gillespie COPYRIGHT AND LICENSE ===================== Copyright 2016 Sam Gillespie This library is free software; you can redistribute it and/or modify it under the Artistic License 2.0.