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

Processing:Примеры/Применение функции map()

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


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

Контакты:

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


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


Описание[1]

Функция map() используется для масштабирования одного числового диапазона к другому числовому диапазону – тому, что более полезен для проекта, над которым вы работаете. К примеру, при помощи map() можно использовать данные о позиции мыши для управления цветом или размером (или обоими характеристиками сразу) какой-либо фигуры.

В скетче-примере ниже координата Х мыши (значение от 0 до 640) масштабируется к новому числовому диапазону, который задает цвет и размер эллипса посередине экрана.

Пример

  1. void setup() {
  2.   size(640, 360);
  3.   noStroke();
  4. }
  5.  
  6. void draw() {
  7.   background(0);
  8.   // масштабируем значение mouseX 0-640
  9.   // к новому числовому диапазону 0-175:
  10.   float c = map(mouseX, 0, width, 0, 175);
  11.   // масштабируем значение mouseX 0-640
  12.   // к новому числовому диапазону 40-300:
  13.   float d = map(mouseX, 0, width, 40, 300);
  14.   fill(255, c, 0);
  15.   ellipse(width/2, height/2, d, d);  
  16. }

См.также

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

  1. processing.org - Map