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

Выберите платформу: 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
    }
)