Forums > MaxMSP

autopattr bug ?

June 11, 2007 | 10:42 am


June 11, 2007 | 11:05 am

On 11 juin 07, at 12:42, guillaume wrote:

> i’m facing a problem (bug?) with autopattr and ctrlmatrix, it seems
> autopattr doesn’t like large matrix.
> i’m using max 4.6.3.

The problem is that the number of items to store is astronomical. 102
(col)*81(row)*3(x,y,state): 24786, AFAIK, autopattr have the same
limitation as the list length (4095). I would suggest other strategy
involving storing only the on points (dump the row/col, store the non
0 states).

Best,
ej


June 12, 2007 | 9:24 am

guillaume schrieb:
> i’m facing a problem (bug?) with autopattr and ctrlmatrix, it seems
> autopattr doesn’t like large matrix. i’m using max 4.6.3.
>
> thanks for your help

Beside the explanation of Emmanuel, you might rethink your UI design. A
matrix of this size is more like a picture, maybe you can better achieve
what you want to do with jitter or LCD… You’d need to store it
differently than with autopattr though…
Even with a matrix of that size it should be possible to dump it into a
coll, and save the coll with the patcher…

just some thoughts…

Stefan


Stefan Tiedje————x——-
–_____———–|————–
–(_|_ —-|—–|—–()——-
– _|_)—-|—–()————–
———-()——–www.ccmix.com


June 12, 2007 | 10:13 am

i explored a little the coll solution, but this doesn’t seem to be really easy… in fact my 54×54 matrix is a router controller, i managed to do it another way, with a lot of ubumenu. it’s more user friendly, you know a little bit better where each sensor is sending data.

G


June 12, 2007 | 10:33 am

On 12 juin 07, at 12:13, guillaume wrote:

> i explored a little the coll solution, but this doesn’t seem to be
> really easy… in fact my 54×54 matrix is a router controller, i
> managed to do it another way, with a lot of ubumenu. it’s more user
> friendly, you know a little bit better where each sensor is sending
> data.

This is what I usually do. It can be optimised but this is just the
idea.

ej

#P window setfont "Sans Serif" 9.;
#P window linecount 1;
#P newex 30 100 64 196617 speedlim 50;
#P newex 30 200 174 196617 t i 1;
#P button 30 75 15 0;
#P newex 30 53 82 196617 pvar matrixctrl;
#B color 6;
#P newex 137 533 62 196617 prepend set;
#P message 137 559 50 196617 1;
#P newex 60 487 40 196617 pattr;
#B color 12;
#X prestore 1 0 1;
#P objectname u336000003;
#P comment 112 423 148 196617 1 is a fake so it’s never empty;
#P newex 60 544 51 196617 zl slice 1;
#P comment 204 368 91 196617 get x y of on cells;
#P newex 60 246 100 196617 t i i;
#P newex 60 574 61 196617 t l clear;
#P newex 60 660 49 196617 s matrix;
#B color 6;
#P newex 60 624 49 196617 append 1;
#P newex 60 599 47 196617 zl iter 2;
#P newex 294 14 49 196617 r matrix;
#B color 6;
#P newex 60 420 46 196617 zl group;
#P newex 60 366 117 196617 if $i2 == 1 then $i1 $i3;
#P newex 60 336 100 196617 pack 0 0 0;
#P newex 60 313 52 196617 listfunnel;
#P newex 60 267 80 196617 prepend getrow;
#P newex 60 290 73 196617 grab 2 matrix;
#P newex 30 221 40 196617 uzi 1 0;
#P newex 30 179 34 196617 zl len;
#P message 30 129 64 196617 getcolumn 0;
#P newex 30 152 73 196617 grab 2 matrix;
#P user matrixctrl 294 42 1644 1300 MatrixDefaultCell.pct
MatrixDefaultBkgnd.pct 1644 1300 16 16 102 81 16 16 1 1 48 2 5120 0;
#P objectname matrixctrl;
#P comment 69 180 115 196617 get the number of rows;
#P connect 21 0 19 0;
#P connect 21 0 23 0;
#P connect 27 0 3 0;
#P connect 25 0 27 0;
#P connect 5 2 17 0;
#P fasten 5 1 11 0 50 380;
#P connect 26 0 5 0;
#P fasten 26 1 11 0 199 381;
#P connect 4 0 26 0;
#P connect 11 0 21 0;
#P connect 24 0 25 0;
#P connect 23 0 22 0;
#P connect 19 1 16 0;
#P connect 17 1 9 2;
#P connect 17 0 7 0;
#P fasten 16 1 15 0 116 643;
#P connect 16 0 13 0;
#P connect 14 0 15 0;
#P connect 13 0 14 0;
#P connect 6 1 8 0;
#P connect 7 0 6 0;
#P connect 3 0 2 0;
#P connect 2 1 4 0;
#P connect 12 0 1 0;
#P connect 10 0 11 0;
#P connect 9 0 10 0;
#P connect 8 0 9 0;
#P window clipboard copycount 28;


June 12, 2007 | 12:30 pm

thanks emmanuel

i thought to do something like that, i also tried to cut my matrix into 4 submatrix, and store only the submatrix (which are sync with the big one)
but i found these solutions a bit too tricky… :)

G


Viewing 6 posts - 1 through 6 (of 6 total)