Чистые данные из print~ для печати второго элемента с помощью print

введите здесь описание изображения

С помощью следующей программы я получаю большой список из print~.

Я хочу получить второе значение из этого списка.

Как получить это второе значение и распечатать его с помощью печати, а не print~?


person jens426    schedule 22.10.2016    source источник
comment
Извините, но я вообще не могу понять ваш вопрос, не могли бы вы попытаться сформулировать его лучше? Я тоже не носитель языка, но фразы вроде have do a get... или out have to get не имеют абсолютно никакого смысла.   -  person gilbertohasnofb    schedule 23.10.2016


Ответы (1)


[print~] всегда будет печатать весь сигнальный блок (в вашем случае 128 значений).

чтобы получить конкретный образец, вы можете вместо этого использовать таблицу, ввести в нее отслеживаемый сигнал и получить интересующие вас значения:

...
|
[tabsend~ $0-foo]

[table $0-foo 128]

[2(
|
[tabread $0-foo]
|
[print]

примечание: в отличие от [print~], который будет генерировать выходные данные только в следующем сигнальном блоке, в этом случае данные будут выведены немедленно (то есть: данные сигнала будут взяты из последнего блока). сигнальный блок). чтобы получить следующий сигнальный блок, вы можете заменить нижнюю часть предлагаемого решения чем-то вроде следующего:

[bang~]            [2(
|                  |
|      [r $0-next] |
|      |           |
[spigot]           [t b       f]
|                  |           |
[t f b]            [1(         |
|     |            |           |
|     [0(          [s $0-next] |
|     |                        |
|     [s $0-next]              |
|                              |
[float                         ]
|
[tabread $0-foo]
|
...

(патч использует [s/r $0-next], чтобы избежать перекрестных линий соединения в ASCII-графике; на практике вместо этого вы, вероятно, захотите использовать прямые соединения) вероятно, лучше всего инкапсулировать все это в абстракцию.

person umläute    schedule 24.10.2016