Настройка управления камерой,Настройка управления камерой

Выберите платформу: Android iOS JavaScript

Пользователи могут управлять масштабированием, наклоном, положением и поворотом камеры с помощью жестов на карте. Камеру также можно настраивать программно.

Диаграмма, иллюстрирующая 3D-модель камеры

Положение камеры

Вид карты моделируется камерой , направленной на определённую точку в трёхмерном пространстве. Положение и ориентация камеры (и, следовательно, рендеринг карты) определяются следующими свойствами: центр (широта/долгота/высота точки, на которую направлена камера), направление, наклон, дальность и поворот.

Центр (Широта/Долгота/Высота)

Центр определяет конкретную точку в трёхмерном пространстве, которую видит камера. Она задаётся с помощью класса LatLngAltitude , который объединяет значения широты, долготы и высоты. Это позволяет точно определить положение точки фокусировки камеры в трёх измерениях.

Широта может находиться в диапазоне от -90 до 90 градусов включительно. Долгота — в диапазоне от -180 до 180 градусов включительно. Высота над уровнем моря указывается в метрах.

Заголовок

Направление камеры определяет направление, в котором она будет направлена, измеряемое в градусах по часовой стрелке от истинного севера. Север соответствует 0 градусам, восток — 90 градусам, юг — 180 градусам, а запад — 270 градусам. Это определяет ориентацию камеры относительно вертикальной оси центральной точки .

Наклон

Наклон определяет угол наклона камеры относительно вертикальной оси, измеряемый в градусах. Наклон 0 градусов означает, что камера направлена прямо вниз, на Землю ( в надир ). Наклон 90 градусов означает, что камера направлена горизонтально в направлении, указанном курсом .

Диапазон

Диапазон определяет расстояние в метрах между положением камеры и центральной точкой, на которую она смотрит. Диапазон может варьироваться от нуля метров (очень близко) до шестидесяти трёх миллионов метров, что позволяет просматривать изображения от очень близкого расстояния до поистине глобальной перспективы. Это фактически контролирует степень приближения или удаления карты.

Рулон

Крен задаёт угол наклона камеры относительно горизонта, измеряемый в градусах. Этот параметр можно использовать для создания таких эффектов, как вираж во время симуляции полёта или даже «бочка», когда камера вращается вокруг своей оси обзора.

Управление камерой

В следующем примере кода показано, как программно управлять камерой, вызывая метод setCamera . Чтобы использовать этот пример кода, следуйте инструкциям в разделах «Настройка» и «Добавление 3D-карты в приложение» , чтобы настроить проект Android Studio с простой 3D-картой. Затем добавьте следующий код в файл MainActivity.kt :

// Add imports
import com.google.android.gms.maps3d.model.latLngAltitude

...

// Add to the onMap3DViewReady method, after the googleMap3D object has been initialized
googleMap3D.setCamera(
    camera {
        center = latLngAltitude {
            latitude = 38.743502
            longitude = -109.499374
            altitude = 1467.0
        }
        heading = 350.0
        tilt = 58.1
        range = 138.2
        roll = 0.0
    }
)