Processing:Справочник языка Processing/map(): различия между версиями
Материал из Онлайн справочника
Перейти к навигацииПерейти к поиску
Myagkij (обсуждение | вклад) |
Нет описания правки |
||
Строка 8: | Строка 8: | ||
==Обозначение== | ==Обозначение== | ||
<syntaxhighlight lang="c | <syntaxhighlight lang="c"> | ||
map() | map() | ||
</syntaxhighlight> | </syntaxhighlight> | ||
Строка 22: | Строка 22: | ||
==Синтаксис== | ==Синтаксис== | ||
<syntaxhighlight lang="c | <syntaxhighlight lang="c"> | ||
map(value, start1, stop1, start2, stop2) | map(value, start1, stop1, start2, stop2) | ||
</syntaxhighlight> | </syntaxhighlight> | ||
Строка 28: | Строка 28: | ||
==Параметры== | ==Параметры== | ||
<syntaxhighlight lang="c | <syntaxhighlight lang="c"> | ||
value - float: входящее значение для преобразования. | value - float: входящее значение для преобразования. | ||
start1 - float: нижняя граница текущего диапазона значений. | start1 - float: нижняя граница текущего диапазона значений. | ||
Строка 38: | Строка 38: | ||
==Возвращаемое значение== | ==Возвращаемое значение== | ||
<syntaxhighlight lang="c | <syntaxhighlight lang="c"> | ||
float | float | ||
</syntaxhighlight> | </syntaxhighlight> | ||
Строка 46: | Строка 46: | ||
===№1=== | ===№1=== | ||
<syntaxhighlight lang="c" line="GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS | <syntaxhighlight lang="c" line="GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS"> | ||
size(200, 200); | size(200, 200); | ||
float value = 25; | float value = 25; | ||
Строка 55: | Строка 55: | ||
===№2=== | ===№2=== | ||
<syntaxhighlight lang="c" line="GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS | <syntaxhighlight lang="c" line="GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS"> | ||
float value = 110; | float value = 110; | ||
float m = map(value, 0, 100, -20, -10); | float m = map(value, 0, 100, -20, -10); | ||
Строка 63: | Строка 63: | ||
===№3=== | ===№3=== | ||
<syntaxhighlight lang="c" line="GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS | <syntaxhighlight lang="c" line="GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS"> | ||
void setup() { | void setup() { | ||
size(200, 200); | size(200, 200); |
Версия от 18:37, 14 мая 2023
Содержание | Среда разработки Processing | Справочник языка Processing | Библиотеки | Примеры | Режимы программирования |
Проверка/Оформление/Редактирование: Мякишев Е.А.
Черновик |
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
size(200, 200);
float value = 25;
float m = map(value, 0, 100, 0, width);
ellipse(m, 200, 10, 10);
№2
float value = 110;
float m = map(value, 0, 100, -20, -10);
println(m); // печатаем "-9.0"
№3
void setup() {
size(200, 200);
noStroke();
}
void draw() {
background(204);
float x1 = map(mouseX, 0, width, 50, 150);
ellipse(x1, 75, 50, 50);
float x2 = map(mouseX, 0, width, 0, 200);
ellipse(x2, 125, 50, 50);
}