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);
}

См.также

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