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

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

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


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


map() [1]

Обозначение

map()

Описание

Cопоставление числа от одного диапазона к другому.

В первом примере, число 25 преобразуется из значения в диапазоне от 0 до 100 в значение, которое варьируется от левого края окна (0) до правой кромки (width, ширина окна).

Как показано во втором примере, числа вне диапазона не заменяются на значения минимальных и максимальных параметров, так как значения вне диапазона часто являются преднамеренными и полезными.

Синтаксис

map(value, start1, stop1, start2, stop2)

Параметры

value  - float: входящее значение для преобразования.
start1 - float: нижняя граница текущего диапазона значений.        
stop1  - float: верхняя граница текущего диапазона значений.      
start2 - float: нижняя граница целевого диапазона значения.      
stop2  - float: верхняя граница целевого диапазона значения.

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

float

Пример

№1

  1. size(200, 200);
  2. float value = 25;
  3. float m = map(value, 0, 100, 0, width);
  4. ellipse(m, 200, 10, 10);

№2

  1. float value = 110;
  2. float m = map(value, 0, 100, -20, -10);
  3. println(m);  // печатаем "-9.0"

№3

  1. void setup() {
  2.   size(200, 200);
  3.   noStroke();
  4. }
  5.  
  6. void draw() {
  7.   background(204);
  8.   float  x1 = map(mouseX, 0, width, 50, 150);
  9.   ellipse(x1, 75, 50, 50);  
  10.   float x2 = map(mouseX, 0, width, 0, 200);
  11.   ellipse(x2, 125, 50, 50);  
  12. }

См.также

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

  1. processing.org - map()