Processing:Примеры/Щекотка: различия между версиями

Материал из Онлайн справочника
Перейти к навигацииПерейти к поиску
Нет описания правки
Строка 4: Строка 4:
{{Myagkij-редактор}}
{{Myagkij-редактор}}


{{Черновик}}
 


=Описание<ref>[https://processing.org/examples/tickle.html processing.org - Tickle]</ref>=
=Описание<ref>[https://processing.org/examples/tickle.html processing.org - Tickle]</ref>=
Строка 62: Строка 62:
}}
}}


<syntaxhighlight lang="c" line="GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS" enclose="div">
<syntaxhighlight lang="c" line="GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS">
String message = "tickle";
String message = "tickle";
float x, y; // координаты X и Y для текста
float x, y; // координаты X и Y для текста
Строка 120: Строка 120:
|Высота логотипа издателя для schemaNewsArticle=45
|Высота логотипа издателя для schemaNewsArticle=45
}}
}}
{{Навигационная таблица/Справочник языка Processing}}
{{Навигационная таблица/Портал/Processing}}
{{Навигационная таблица/Processing/Примеры}}
{{Навигационная таблица/Телепорт}}

Версия от 12:01, 20 мая 2023


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



Описание[1]

Если навести курсором на слово «tickle» в середине экрана, оно начнет дрожать. Если постараться, его можно «выщекотать» за пределы экрана.

Пример

String message = "tickle";
float x, y; // координаты X и Y для текста
float hr, vr;  // горизонтальный и вертикальный радиус текста 

void setup() {
  size(640, 360);
  
  // создаем шрифт:
  textFont(createFont("SourceCodePro-Regular.ttf", 36));
  textAlign(CENTER, CENTER);
  
  hr = textWidth(message) / 2;
  vr = (textAscent() + textDescent()) / 2;
  noStroke();
  x = width / 2;
  y = height / 2;
}

void draw() {
  // вместо очищения фона делаем его затухание,
  // рисуя сверху полупрозрачный прямоугольник:
  fill(204, 120);
  rect(0, 0, width, height);
  
  // если курсор находится над текстом, меняем его позицию:
  if (abs(mouseX - x) < hr &&
      abs(mouseY - y) < vr) {
    x += random(-5, 5);
    y += random(-5, 5);
  }
  fill(0);
  text("tickle", x, y);
}

См.также

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