Wim Dijkgraaf Posted May 2, 2016 Share Posted May 2, 2016 Is there a more elegant way to do this? ;; create major scale (defun majorScale (root) (make-scale root 16 :alt '(2 2 1 2 2 2 1))) ;; usage: (majorScale 'c4) ;; 4 part root position harmony of every degree of a major scale (defun harmonizeMajorScale (root) (harmonic-progression '(0 1 2 3 4 5 6 7) (majorScale root) :size 4)) ;; usage: (harmonizeMajorScale 'c4) ;; 4 part drop 2 of every degree of a major scale, with every chord in a specific inversion (defun 4PartDrop2 (chords inversion) (loop for chord in chords collect (chordize (pitch-transpose-n '(0 0 -12 0) (pitch-melodize (list (chord-inversion inversion chord) ) ) ) ) ) ) ;; usage: (4PartDrop2 (harmonizeMajorScale 'c4) 3) Any advice very much appreciated. Kind regards, Wim Dijkgraaf Quote Link to comment Share on other sites More sharing options...
Stephane Boussuge Posted May 3, 2016 Share Posted May 3, 2016 (mapcar (lambda(x) ;; mapcar will apply the inversion to each chord (chord-inversion 3 x)) (harmonic-progression ;; harmonic progression definition (integer-transpose -1 '(1 2 3 4 5 6 7)) ;;degree for the chords '(c4 major) ;; scale used :size 4 ;; chords size )) SB. Quote Link to comment Share on other sites More sharing options...
Wim Dijkgraaf Posted May 3, 2016 Author Share Posted May 3, 2016 Thanks Stephane for your reply. Interesting solution! If I'm not mistaken, your solution doesn't include the Drop 2 (transpose second voice from the top an octave down). Any idea how to incorporate that into this approach? Kind regards, Wim Dijkgraaf Quote Link to comment Share on other sites More sharing options...
Stephane Boussuge Posted May 4, 2016 Share Posted May 4, 2016 Hi Wim, a possible solution: (setf chords (mclist (mapcar (lambda(x) ;; mapcar will apply the inversion to each chord (chord-inversion 3 x)) (harmonic-progression ;; harmonic progression definition (integer-transpose -1 '(1 2 3 4 5 6 7)) ;;degree for the chords '(c4 major) ;; scale used :size 4 ;; chords size )))) (setf drop2 (chordize-list (pitch-transpose-n '(0 0 -12 0) (pitch-melodize chords)))) SB. loopyc 1 Quote Link to comment Share on other sites More sharing options...
JulioHerrlein Posted October 28, 2018 Share Posted October 28, 2018 Dear Wim, Please, check this post: Best, Julio opmo 1 Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.