Shift interval from matrixctrl -> zl compare indexes

Wil's icon

I have this simple system been using for some time

Using matrixctrl to choose set of notes

But only can shift (transpose) entire set

I would like to combine or add the output of matrixcntrl /zl compare with sliders to shift octave of each individual note selected

like this - how to get the indexes for zl compare - including zeros - to maintain position and do addition?

Max Patch
Copy patch and select New From Clipboard in Max.


Source Audio's icon

zl.compare does not output indexes if list matches.

at least in max 8 it is so.

means when you set all matrix cells to zero, last seen index will hang.

do I see that correctly ?

you set 13 notes using multislider, then activate its index for transposing in vexpr.

and de-transpose deactivated indexes ?

why not multiply transposition list using matrix row ?

if index 3 is 1 it will set transposition * 1, if it iz zero then no transposition

dequalsrxt's icon

If I'm understanding you correctly (no guarantees!), maybe something like this will work? It's a basic sketch of something I worked out for one of my patches.

Max Patch
Copy patch and select New From Clipboard in Max.

Wil's icon

Thanks DEQUALSRXT - will look at your solution

I think I figured it out!

like this - x X (1+12/x) - 12 can be 24, 36 etc

Max Patch
Copy patch and select New From Clipboard in Max.

I can just @replace " " the zeros and put in coll - transpose to whatever.

TFL's icon

Not 100% sure if that's what you want, but:

Max Patch
Copy patch and select New From Clipboard in Max.

Using -999 as an "unselected" indicator, and removing every item matching that value.

EDIT: didn't saw every other answers!

Wil's icon

TFL - Its Max- all answers are golden!

Yeah I was working on that formula at same time.

Yours precisely recreates what I asked for.

Mine requires more steps to get to the coll.

I opted for not using zl compare and using output matrixctrl - starting at 1 (with list to 13) instead of 0-12 - to get to 0.

In the end they are just midi notes. So my fundamental sits around 21 A0

//

means when you set all matrix cells to zero, last seen index will hang.
do I see that correctly ?

yes. the patch you helped with a long time ago does that. but I never have 'synth on' with out at least one pitch selected