Projection.perspective

Синтаксис

perspective(fovy: Number, aspect: Number, znear: Number, zfar: Number);

Параметры

fovy. Угол обзора по вертикали в градусах;

aspect. Соотношение сторон;

znear. Расстояние от камеры до ближней плоскости отсечения;

zfar. Расстояние до дальней плоскости отсечения.

Описание

Метод perspective устанавливает перспективную проекцию.

Пример

Для выполнения примера предполагается наличие на странице компонента MapChart c  наименованием «map» (см. «Пример создания компонента MapChart»). Необходимо открыть сферическую карту. Получим проекционную матрицу:

// Получаем объект класса для работы с трехмерной проекцией
var projection = map.getGLControl().getProjection();
// Получаем проекционную матрицу
console.log("Проекционная матрица: ");
console.log(projection.getProjectionMatrix().getData());

В результате в консоль будет выведена проекционная матрица:

Проекционная матрица:

[4.717621803283691, 0, 0, 0, 0, 10.385396957397461, 0, 0, 0, 0, -1.0000020265579224, -1, 0, 0, -0.002000001957640052, 0]

 

Установим перспективную проекцию и получим новую проекционную матрицу:

// Устанавливаем перспективную проекцию
projection.perspective(30, 4, 100, 200);
// Получаем новую проекционная матрицу
console.log("Проекционная матрица: ");
console.log(projection.getProjectionMatrix().getData());

В результате в консоль будет выведена проекционная матрица:

Проекционная матрица:

[0.9330127239227295, 0, 0, 0, 0, 3.732050895690918, 0, 0, 0, 0, -3, -1, 0, 0, -400, 0]

См. также:

Projection