Функция p5.js map ()

Опубликовано: 7 Августа, 2021

Функция map () в p5.js используется для нормализации числа, имеющего диапазон от min1 до max1 в диапазоне от min2 до max2.

Нормализация очень полезна в p5.js, если вы масштабируете свои элементы. Поскольку, как мы знаем, нормализация заботится обо всех пропорциях масштабирования, поэтому мы получаем полностью сбалансированное масштабирование.

Не только масштабирование, но и нормализация любых операций преобразования очень полезна.

Синтаксис:

 map (значение, start1, stop1, start2, stop2, [withinBounds])

Параметры: эта функция принимает шесть параметров, как указано выше и описано ниже:

  • значение: значение, которое вы хотите нормализовать.
  • min1: Минимальное значение текущего диапазона значения.
  • max1: максимальное значение текущего диапазона значения.
  • min2: Минимальное значение целевого диапазона значения.
  • max2: максимальное значение целевого диапазона значения.
  • insideBounds (необязательно): ограничивает нормализованное значение value в диапазоне [min2, max2].

Пример 1. Для параметра WithinBounds по умолчанию установлено значение false.

Javascript




function setup() {
noLoop();
}
function draw() {
background(220);
// Assume value has range [0, 100]
let value = 50;
// We want to convert value
// in range of [0, 50]
let newValue = map(value, 0, 100, 0, 50);
console.log(newValue);
}

Выход:

 25

Пример 2: Обратите внимание, как в пределах границ ограничивает диапазон значений

Javascript




function setup() {
noLoop();
}
function draw() {
background(204);
// Value has a range[0, 100]
let value = 150;
// We are mapping it in range of [0, 50]
let newValue1 = map(value, 0, 100, 0, 50);
console.log(newValue1);
// Notice the last parameter is true
// we are mapping it in range of [0, 50]
let newValue2 = map(value, 0, 100, 0, 50, true );
console.log(newValue2);
}

Выход:

 75
50