Processing:Примеры/Синус и косинус: различия между версиями
Материал из Онлайн справочника
Перейти к навигацииПерейти к поиску
Myagkij (обсуждение | вклад) Нет описания правки |
Myagkij (обсуждение | вклад) Нет описания правки |
||
(не показаны 3 промежуточные версии 2 участников) | |||
Строка 1: | Строка 1: | ||
{{Processing панель перехода}} | {{Processing панель перехода}} | ||
{{Перевод от Сubewriter}} | {{Перевод от Сubewriter}} | ||
{{Myagkij-редактор}} | {{Myagkij-редактор}} | ||
=Описание<ref>[https://processing.org/examples/sinecosine.html processing.org - Sine Cosine]</ref>= | =Описание<ref>[https://processing.org/examples/sinecosine.html processing.org - Sine Cosine]</ref>= | ||
Строка 68: | Строка 65: | ||
}} | }} | ||
<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 x1, x2, y1, y2; | float x1, x2, y1, y2; | ||
float angle1, angle2; | float angle1, angle2; | ||
Строка 114: | Строка 111: | ||
<references /> | <references /> | ||
{{Навигационная таблица/Портал/Processing}} | |||
{{Навигационная таблица/ | |||
Текущая версия от 07:42, 27 августа 2023
Содержание | Среда разработки Processing | Справочник языка Processing | Библиотеки | Примеры | Режимы программирования |
Перевод: Максим Кузьмин
Проверка/Оформление/Редактирование: Мякишев Е.А.
Описание[1]
Линейное движение при помощи функций sin() и cos().
В этом скетче-примере функциям sin() и cos() «скармливаются» значения между «0» и «PI*2» (то есть два числа Пи, что составляет примерно «6,28»), после чего они возвращают значения в диапазоне от «-1» до «1». Затем эти значения масштабируются к другому числовому диапазону, чтобы эллипсы двигались более заметно.
Пример
float x1, x2, y1, y2;
float angle1, angle2;
float scalar = 70;
void setup() {
size(640, 360);
noStroke();
rectMode(CENTER);
}
void draw() {
background(0);
float ang1 = radians(angle1);
float ang2 = radians(angle2);
x1 = width/2 + (scalar * cos(ang1));
x2 = width/2 + (scalar * cos(ang2));
y1 = height/2 + (scalar * sin(ang1));
y2 = height/2 + (scalar * sin(ang2));
fill(255);
rect(width*0.5, height*0.5, 140, 140);
fill(0, 102, 153);
ellipse(x1, height*0.5 - 120, scalar, scalar);
ellipse(x2, height*0.5 + 120, scalar, scalar);
fill(255, 204, 0);
ellipse(width*0.5 - 120, y1, scalar, scalar);
ellipse(width*0.5 + 120, y2, scalar, scalar);
angle1 += 2;
angle2 += 3;
}
См.также
Внешние ссылки
Примеры на Processing | |
---|---|
Основы |
|
Продвинутые графические эффекты |
|
Примеры из сторонних библиотек |