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

Processing:Справочник языка Processing/translate()

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


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

Контакты:

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


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


translate() [1]

Обозначение

translate()

Описание

Перемещает объект в дисплейном окне. С помощью параметра x задается перемещение влево-вправо, с помощью параметра y – вниз-вверх, а с помощью параметра z – вблизь-вдаль от экрана. Чтобы использовать в translate() параметр z, в коде также нужен метод size() с параметром P3D – как показано в примере ниже.

Эта трансформация применяется ко всему, что с объектом происходит потом, а последующие вызовы translate() суммируют эффект. К примеру, вызов translate(50, 0), а затем translate(20, 0) – это то же самое, что и translate(70, 0). Если translate() будет вызвана внутри draw(), с началом следующего цикла трансформация сбросится. В дальнейшем этим методом можно управлять при помощи методов pushMatrix() и popMatrix().

Синтаксис

translate(x, y)
translate(x, y, z)

Параметры

x – перемещение объекта влево-вправо. Тип данных – float
y – перемещение объекта вверх-вниз. Тип данных – float
z – перемещение объекта вдаль-вблизь. Тип данных – float

Возвращаемое значение

void

Пример

№1

Processing translate 0.png


  1. translate(30, 20);
  2. rect(0, 0, 55, 55);

№2

Processing translate 1.png


  1. // перемещение объектов в 3D требует метода size() с параметром P3D:
  2. size(100, 100, P3D);
  3. // перемещаем объект на 30 пикселей вбок, на 20 вниз
  4. // и на 50 назад (т.е. «вдаль» от экрана):
  5. translate(30, 20, -50);
  6. rect(0, 0, 55, 55);

№3

Processing translate 2.png


  1. rect(0, 0, 55, 55);  // рисуем прямоугольник с
  2.                      // с исходными координатами 0,0
  3. translate(30, 20);
  4. rect(0, 0, 55, 55);  // рисуем новый прямоугольник на 0,0
  5. translate(14, 14);
  6. rect(0, 0, 55, 55);  // рисуем новый прямоугольник на 0,0

См.также

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

  1. processing.org - translate()