Processing:Справочник языка Processing/scale(): различия между версиями
Myagkij (обсуждение | вклад) Нет описания правки |
Myagkij (обсуждение | вклад) Нет описания правки |
||
(не показаны 2 промежуточные версии 1 участника) | |||
Строка 1: | Строка 1: | ||
{{Processing панель перехода}} | {{Processing панель перехода}} | ||
{{Перевод от Сubewriter}} | {{Перевод от Сubewriter}} | ||
{{Myagkij-редактор}} | {{Myagkij-редактор}} | ||
= scale() <ref>[https://processing.org/reference/scale_.html processing.org - scale()]</ref>= | = scale() <ref>[https://processing.org/reference/scale_.html processing.org - scale()]</ref>= | ||
Строка 10: | Строка 7: | ||
==Обозначение== | ==Обозначение== | ||
<syntaxhighlight lang="c | <syntaxhighlight lang="c"> | ||
scale() | scale() | ||
</syntaxhighlight> | </syntaxhighlight> | ||
Строка 25: | Строка 22: | ||
==Синтаксис== | ==Синтаксис== | ||
<syntaxhighlight lang="c | <syntaxhighlight lang="c"> | ||
scale(s) | scale(s) | ||
scale(x, y) | scale(x, y) | ||
Строка 33: | Строка 30: | ||
==Параметры== | ==Параметры== | ||
<syntaxhighlight lang="c | <syntaxhighlight lang="c"> | ||
s – процентное значение для изменения масштаба объекта. Тип данных – float | s – процентное значение для изменения масштаба объекта. Тип данных – float | ||
x – процентное значение для изменения масштаба объекта по оси X. Тип данных – float | x – процентное значение для изменения масштаба объекта по оси X. Тип данных – float | ||
Строка 42: | Строка 39: | ||
==Возвращаемое значение== | ==Возвращаемое значение== | ||
<syntaxhighlight lang="c | <syntaxhighlight lang="c"> | ||
void | void | ||
</syntaxhighlight> | </syntaxhighlight> | ||
Строка 53: | Строка 50: | ||
<syntaxhighlight lang="c" line="GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS | <syntaxhighlight lang="c" line="GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS"> | ||
rect(30, 20, 50, 50); | rect(30, 20, 50, 50); | ||
scale(0.5); | scale(0.5); | ||
Строка 64: | Строка 61: | ||
<syntaxhighlight lang="c" line="GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS | <syntaxhighlight lang="c" line="GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS"> | ||
rect(30, 20, 50, 50); | rect(30, 20, 50, 50); | ||
scale(0.5, 1.3); | scale(0.5, 1.3); | ||
Строка 75: | Строка 72: | ||
<syntaxhighlight lang="c" line="GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS | <syntaxhighlight lang="c" line="GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS"> | ||
// масштабирование в 3D требует метода size() с параметром P3D: | // масштабирование в 3D требует метода size() с параметром P3D: | ||
size(100, 100, P3D); | size(100, 100, P3D); | ||
Строка 90: | Строка 87: | ||
<references /> | <references /> | ||
{{Навигационная таблица/Портал/Processing}} | |||
{{Навигационная таблица/ |
Текущая версия от 19:44, 19 сентября 2023
Содержание | Среда разработки Processing | Справочник языка Processing | Библиотеки | Примеры | Режимы программирования |
scale() [1]
Обозначение
scale()
Описание
Увеличивает или уменьшает масштаб фигуры, приближая и удаляя друг от друга ее вершины. По умолчанию масштабирование объекта всегда происходит относительно начала координат. Значения для scale() задаются с помощью десятичной дроби. К примеру, вызов scale(2.0) увеличит масштаб фигуры на 200%. Эта трансформация применяется ко всему, что с фигурой происходит потом, а последующие вызовы scale() умножают эффект. К примеру, если вызвать scale(2.0), а затем scale(1.5), то это то же самое, что и scale(3.0).
Если вызвать scale() внутри draw(), в начале следующего цикла трансформация сбросится. Чтобы в scale() можно было использовать параметр z, в коде также необходим метод size() с параметром P3D – как показано в третьем примере ниже.
Кроме того, этим методом можно управлять при помощи pushMatrix() и popMatrix().
Синтаксис
scale(s)
scale(x, y)
scale(x, y, z)
Параметры
s – процентное значение для изменения масштаба объекта. Тип данных – float
x – процентное значение для изменения масштаба объекта по оси X. Тип данных – float
y – процентное значение для изменения масштаба объекта по оси Y. Тип данных – float
z – процентное значение для изменения масштаба объекта по оси Z. Тип данных – float
Возвращаемое значение
void
Пример
№1
rect(30, 20, 50, 50);
scale(0.5);
rect(30, 20, 50, 50);
№2
rect(30, 20, 50, 50);
scale(0.5, 1.3);
rect(30, 20, 50, 50);
№3
// масштабирование в 3D требует метода size() с параметром P3D:
size(100, 100, P3D);
noFill();
translate(width/2+12, height/2);
box(20, 20, 20);
scale(2.5, 2.5, 2.5);
box(20, 20, 20);
См.также
Внешние ссылки
Примеры на Processing | |
---|---|
Основы |
|
Продвинутые графические эффекты |
|
Примеры из сторонних библиотек |