Как заставить процессинг взять один элемент массива в текстовом файле и принять решение по нему - PullRequest
0 голосов
/ 25 июня 2019

Я хочу создать программу, которая принимает звуковой сигнал, а затем создает из него изображение из разноцветных кругов. У меня есть бэкэнд Python, меняющий вход микрофона на целочисленные значения от -255 до 255, который работает нормально. Он сохраняет все данные в режиме реального времени в текстовый файл. Моя проблема возникает с тем, как мой файл обработки обрабатывает эту информацию. Я хочу, чтобы он принимал каждый элемент в массиве как целое число и использовал его для принятия решений, но я не могу этого добиться.

Код ниже ничего не делает, и я не получаю код ошибки. Я попытался напечатать массив, как показано ниже, и это работает, но я хочу, чтобы он принимал фактическое содержимое массива и использовал его.

void draw() {
 String[] data = loadStrings("filename");
 for(int i = 0; i<data.length; i++) {
   int size = Math.abs(i);
   println(n);
   if(i < -182) {
     fill(0, 89, 132);
     ellipse(size, size, size, size);
   } else if(i < -109) { 

и т.д.

Я ожидаю, что он создаст круг с размерами, равными величине звука, и выберу цвет на основе целого числа, созданного программой python. Фактический результат - ничто.

1 Ответ

1 голос
/ 25 июня 2019

i - индекс вашего цикла. Другими словами, он будет принимать значения от 0 до data.length.

Мне кажется, что вы хотите, чтобы фактический элемент data хранился в i-й позиции (data[i]). Имейте в виду, что это будет строка, поэтому вам придется вызывать функцию для анализа значения в int, например Integer.parseInt().

...