Processing:Примеры/Клавиатура

Материал из Онлайн справочника
Перейти к навигацииПерейти к поиску
Версия для печати больше не поддерживается и может содержать ошибки обработки. Обновите закладки браузера и используйте вместо этого функцию печати браузера по умолчанию.

Перевод: Максим Кузьмин
Проверка/Оформление/Редактирование: Мякишев Е.А.


Описание[1]

Кликните на дисплейное окно Processing и начните нажимать на клавиши с буквами на клавиатуре – это начнет создавать в разных местах экрана монохромные полосы. У каждой клавиши есть уникальный идентификационный номер. Эти номера можно использовать для размещения полос и прочих фигур в пространстве.

Пример

int rectWidth;
   
void setup() {
  size(640, 360);
  noStroke();
  background(0);
  rectWidth = width/4;
}

void draw() { 
  // здесь выполняется ожидание нажатия клавиш и рисование полос:
}

void keyPressed() {
  int keyIndex = -1;
  if (key >= 'A' && key <= 'Z') {
    keyIndex = key - 'A';
  } else if (key >= 'a' && key <= 'z') {
    keyIndex = key - 'a';
  }
  if (keyIndex == -1) {
    // если это не клавиша с буквой, очищаем экран:
    background(0);
  } else { 
    // это клавиша с буквой, закрашиваем полосу:
    fill(millis() % 255);
    float x = map(keyIndex, 0, 25, 0, width - rectWidth);
    rect(x, 0, rectWidth, height);
  }
}

См.также

Внешние ссылки