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

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

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


sphereDetail() [1]

Обозначение

sphereDetail()

Описание

Меняет детализацию сферы, меняя соотношение между количеством сегментов, формирующих сферу, и количеством градусов сферы. По умолчанию стоит значение «30», что позволяет создать достаточно детализированную сферу, вершины которой стоят каждые 12 градусов (360/30 = 12). Если вы рендерите большое количество сфер в одном кадре, рекомендуем снизить уровень детализации при помощи этого метода. Эта настройка останется активной до тех пор, пока в коде снова не будет вызван метод sphereDetail() с новым параметром. Таким образом, этот метод не нужно вызывать перед каждым вызовом метода sphere(), разве что вам не нужно отрендерить сферу (или сферы) с другими настройками – к примеру, уменьшить детализацию у маленьких сфер или сфер, что находятся далеко от камеры. Чтобы независимо менять вертикальную и горизонтальную детализацию, воспользуйтесь версией sphereDetail() с двумя параметрами.

Синтаксис

sphereDetail(res)
sphereDetail(ures, vres)

Параметры

res  – количество сегментов (минимум 3), формирующих шар. Тип данных – int
ures – количество вертикальных сегментов, формирующих шар. Тип данных – int
vres – количество горизонтальных (сверху вниз) сегментов, формирующих шар. Тип данных – int

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

void

Пример

void setup() {
  size(100, 100, P3D); 
}

void draw() {
  background(200);
  stroke(255, 50);
  translate(50, 50, 0);
  rotateX(mouseY * 0.05);
  rotateY(mouseX * 0.05);
  fill(mouseX * 2, 0, 160);
  sphereDetail(mouseX / 4);
  sphere(40);
}

См.также

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