Processing:Примеры/Перемещение: различия между версиями

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


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


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


<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">
float x, y;
float x, y;
float dim = 80.0;
float dim = 80.0;
Строка 109: Строка 109:
|Высота логотипа издателя для schemaNewsArticle=45
|Высота логотипа издателя для schemaNewsArticle=45
}}
}}
{{Навигационная таблица/Справочник языка Processing}}
{{Навигационная таблица/Портал/Processing}}
{{Навигационная таблица/Processing/Примеры}}

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


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



Описание[1]

Функция translate() позволяет перемещать объекты в любое место экрана. Первый параметр функции задает смещение по оси X, а второй – смещение по оси Y.

Пример

float x, y;
float dim = 80.0;

void setup() {
  size(640, 360);
  noStroke();
}

void draw() {
  background(102);
  
  x = x + 0.8;
  
  if (x > width + dim) {
    x = -dim;
  } 
  
  translate(x, height/2-dim/2);
  fill(255);
  rect(-dim/2, -dim/2, dim, dim);
  
  // перемещения суммируются;
  // обратите внимание, что этот квадрат движется
  // в два раза быстрее другого, но значения оси X у них одинаковые:
  translate(x, dim);
  fill(0);
  rect(-dim/2, -dim/2, dim, dim);
}

См.также

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