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

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


Перевод: Максим Кузьмин (Cubewriter) Контакты:</br>* Skype: cubewriter</br>* E-mail: cubewriter@gmail.com</br>* Максим Кузьмин на freelance.ru
Проверка/Оформление/Редактирование: Мякишев Е.А.


Cat poo.png Черновик


beginCamera() [1]

Обозначение

beginCamera()

Описание

Методы beginCamera() и endCamera() позволяют осуществлять продвинутую настройку пространства камеры. Они полезны, к примеру, если вам нужно больше контроля за движением камеры, хотя для большинства пользователей будет достаточно и функционала camera().

Эти методы автоматически игнорируют все обычные трансформации – вроде rotate() или translate() – стоящие над ними в блоке draw(), но не трансформации самой камеры. По этой причине, во-первых, методы камеры должны стоять в самом начале draw(), чтобы все трансформации происходили после них, а во-вторых, метод camera() можно поставить сразу после beginCamera(), чтобы вы могли сбросить настройки камеры до применения трансформаций.

Кроме того, этот метод переключает режим матрицы на матрицу камеры, в результате чего методы translate(), rotate(), applyMatrix() и resetMatrix() будут влиять на камеру. За методом beginCamera() всегда должен следовать метод endCamera(), и пары этих методов нельзя помещать внутрь друг друга.


Синтаксис

beginCamera()

Параметры

void

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

void

Пример

Processing beginCamera 0.png


size(100, 100, P3D);
noFill();

beginCamera();
camera();
rotateX(-PI/6);
endCamera();

translate(50, 50, 0);
rotateY(PI/3);
box(45);

См.также

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