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]
См. также: