Cat hungry.png
Здравствуйте! Собираем деньги на перевод материалов по электронике(https://www.allaboutcircuits.com/education/). Реквизиты указаны здесь.

Processing:Примеры/Линейные помехи

Материал из Онлайн справочника
Перейти к: навигация, поиск


Перевод: Максим Кузьмин (Cubewriter)
Перевел 2686 статей для сайта.

Контакты:

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


Ambox content.png Черновик


Описание[1]

Кликните по экрану, зажмите кнопку мыши и начините водить ею по экрану – это будет управлять паттерном помех. Цвета графики будут основаны на цветах исходного изображения. Кроме того, можно зажать любую клавишу на клавиатуре – это покажет изображение, загруженное в скетче, по которому будет проходить вверх-вниз горизонтальная «сканирующая» линия.

Пример

  1. PImage img;
  2. int direction = 1;
  3.  
  4. float signal;
  5.  
  6. void setup() {
  7.   size(640, 360);
  8.   stroke(255);
  9.   img = loadImage("sea.jpg");
  10.   img.loadPixels();
  11.   loadPixels();
  12. }
  13.  
  14. void draw() {
  15.   if (signal > img.height-1 || signal < 0) {
  16.     direction = direction * -1;
  17.   }
  18.   if (mousePressed == true) {
  19.     signal = abs(mouseY % img.height);
  20.   }
  21.   else {
  22.     signal += (0.3*direction);
  23.   }
  24.  
  25.   if (keyPressed == true) {
  26.     set(0, 0, img);
  27.     line(0, signal, img.width, signal);
  28.   }
  29.   else {
  30.     int signalOffset = int(signal)*img.width;
  31.     for (int y = 0; y < img.height; y++) {
  32.       arrayCopy(img.pixels, signalOffset, pixels, y*width, img.width);
  33.     }
  34.     updatePixels();
  35.   }
  36. }

См.также

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

  1. processing.org - Linear Image