#N canvas 596 0 632 642 10; #X msg 55 123 reset; #X obj 13 59 bng 15 250 50 0 empty empty empty 0 -6 0 8 -24198 -1 -1 ; #X msg 13 123 200; #X obj 13 100 until; #X msg 13 79 230400; #X obj 13 177 #out window; #X text 232 250 The argument establishes grid dimensions in parentheses in the order of columns \, rows and grid dimensions.; #X text 232 456 Symbols are considered as a list of ascii characters. ; #X text 232 478 Like a sequence of ints sent one after another \, except in a single message.; #X text 232 741 The grid resulting from the incoming integers and/or grids is output from the outlet.; #X text 99 24 This object allows you to produce grids from non-grid data \, such as integers and lists of integers. This object also reframes/resyncs grids so that multiple grids may be joined together \, or single grids may be split. That kind of operation is already done implicitly in many cases (e.g. sending an integer or list to a grid-receiving inlet) but using this object you have greater flexibility on the conversion. ; #X text 232 421 This equivalent to filtering the grid through an [#to_float] object. It is over ten times faster.; #X msg 157 125 per_message; #X msg 158 147 240 320 3; #X text 232 347 Begins a new grid if there is no current grid. puts that integer in the current grid. ends the grid if it is full. the constructed grid is not stored: it is streamed. the stream is buffered \, so the output is in packets of about a thousand numbers.; #X text 232 557 "to_ascii \$1" converts ints as decimal in ascii codes ; #X obj 294 166 #import; #X msg 294 144 to_ascii \$1; #X floatatom 294 124 5 0 0 0 - - -; #X obj 294 188 #print; #X obj 0 0 doc_h; #X obj 3 317 doc_i 2; #X obj 13 149 #import (240 320 3); #X obj 3 711 doc_o 1; #X obj 3 220 doc_c 2; #X text 232 285 default: i; #X obj 14 347 doc_ii 0; #X obj 14 579 doc_ii 1; #X obj 14 250 doc_cc 0; #X obj 14 285 doc_cc 1; #X obj 97 250 doc_m c0 grid; #X obj 97 285 doc_m c1 numtype; #X obj 97 347 doc_m i0 float; #X obj 97 456 doc_m i0 symbol; #X obj 97 478 doc_m i0 list; #X obj 97 535 doc_m i0 reset; #X text 232 535 aborts the current grid if there is one.; #X obj 97 557 doc_m i0 to_ascii; #X obj 97 421 doc_m i0 grid; #X obj 97 601 doc_m i1 per_message; #X obj 97 579 doc_m i1 grid; #X obj 14 741 doc_oo 0; #X obj 97 741 doc_m o0 grid; #X obj 0 806 doc_f; #X obj 232 579 doc_same 0; #X obj 3 786 doc_also; #X obj 407 141 #import; #X obj 407 160 display; #X msg 407 122 3 3 f # 0 1.618 2 2.718 1 0 0 2 1; #X text 232 601 "per message" : the grid will shape itself according to the incoming data. Sending a list to any grid inlet will result in the same. However \, this is about the only case (as of 9.11) of an object that converts a grid-literal to a real grid without doing anything on the content. (before 9.11 \, the numtype of per_message had to be decided by [#import] using argument 1); #X obj 97 513 doc_m i0 cast; #X obj 103 786 #to_list; #X obj 163 786 #to_float; #X obj 229 786 #to_symbol; #X obj 301 786 #pack; #X obj 343 786 #unpack; #X connect 0 0 22 0; #X connect 1 0 4 0; #X connect 2 0 22 0; #X connect 3 0 2 0; #X connect 4 0 3 0; #X connect 12 0 22 1; #X connect 13 0 22 1; #X connect 16 0 19 0; #X connect 17 0 16 0; #X connect 18 0 17 0; #X connect 22 0 5 0; #X connect 30 1 6 0; #X connect 31 1 25 0; #X connect 32 1 14 0; #X connect 33 1 7 0; #X connect 34 1 8 0; #X connect 35 1 36 0; #X connect 37 1 15 0; #X connect 38 1 11 0; #X connect 39 1 49 0; #X connect 40 1 44 0; #X connect 42 1 9 0; #X connect 45 1 51 0; #X connect 45 1 52 0; #X connect 45 1 53 0; #X connect 45 1 54 0; #X connect 45 1 55 0; #X connect 46 0 47 0; #X connect 48 0 46 0;