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

Processing:Справочник языка Processing/spotLight()

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


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

Контакты:

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


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


spotLight() [1]

Обозначение

spotLight()

Описание

Добавляет прожекторное освещение. Метод spotLight() должен находиться внутри draw(), чтобы функционировать в течение всего времени работы зацикленной программы. Если поместить его в блок setup(), он будет работать только в течение первой итерации зацикленной программы. Параметры v1, v2 и v3 интерпретируются либо как значения RGB, либо как значения HSB – в зависимости от текущего цветового режима. Параметры x, y и z задают позицию источника света, а nx, ny и nz – направление света. Параметр angle задает угол конуса прожектора, а concentration – интенсивность света в центре этого конуса.

Синтаксис

spotLight(v1, v2, v3, x, y, z, nx, ny, nz, angle, concentration)

Параметры

v1            – красный цвет или цветовой тон (зависит от текущего цветового режима). Тип данных – float
v2            – зеленый цвет или насыщенность (зависит от текущего цветового режима). Тип данных – float
v3            – синий цвет или яркость (зависит от текущего цветового режима). Тип данных – float
x             – координата X источника света. Тип данных – float
y             – координата Y источника света. Тип данных – float
z             – координата Z источника света. Тип данных – float
nx            – направление света по оси X. Тип данных – float
ny            – направление света по оси Y. Тип данных – float
nz            – направление света по оси Z. Тип данных – float
angle         – угол прожекторного конуса. Тип данных – float
concentration – значение, задающее интенсивность света в центре конуса. Тип данных – float

Возвращаемое значение

void

Пример

№1

Processing spotLight 0.png


  1. size(100, 100, P3D);
  2. background(0);
  3. noStroke();
  4. spotLight(51, 102, 126, 80, 20, 40, -1, 0, 0, PI/2, 2);
  5. translate(20, 50, 0);
  6. sphere(30);

№2

Processing spotLight 1.png


  1. size(100, 100, P3D);
  2. int concentration = 600;  // Try 1 -> 10000
  3. background(0);
  4. noStroke();
  5. spotLight(51, 102, 126, 50, 50, 400,
  6.           0, 0, -1, PI/16, concentration);
  7. translate(80, 50, 0);
  8. sphere(30);

См.также

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

  1. processing.org - spotLight()