3D Maps

Класс Map3DElement

google.maps.maps3d . Map3DElement Класс google.maps.maps3d . Map3DElement

Map3DElement — это HTML-интерфейс для просмотра 3D-карты.

Пользовательский элемент:
<gmp-map-3d center="lat,lng,altitude" default-labels-disabled default-ui-disabled heading="number" max-altitude="number" max-heading="number" max-tilt="number" min-altitude="number" min-heading="number" min-tilt="number" range="number" roll="number" tilt="number"></gmp-map-3d>

Этот класс расширяет HTMLElement .

Этот класс реализует Map3DElementOptions .

Доступ осуществляется путем вызова const {Map3DElement} = await google.maps.importLibrary("maps3d") . См. раздел Библиотеки в Maps JavaScript API .

Map3DElement
Map3DElement([options])
Параметры:
bounds
Тип: LatLngBounds | LatLngBoundsLiteral optional
Если установлено, положение камеры ограничивается указанными границами широты и долготы. Обратите внимание, что объекты за пределами границ по-прежнему визуализируются. Границы могут ограничивать как долготу, так и широту или ограничивать только широту или долготу. Для границ только широты используйте западную и восточную долготу -180 и 180 соответственно. Для границ только по долготе используйте северную и южную широты 90 и -90 соответственно.
center
Центр карты указан как LatLngAltitude, где высота указана в метрах над уровнем земли. Обратите внимание, что это не обязательно то место, где расположена камера, поскольку поле range влияет на расстояние камеры от центра карты. Если не установлено, по умолчанию используется значение {lat: 0, lng: 0, altitude: 63170000} . 63170000 метров — это максимально допустимая высота (радиус Земли, умноженный на 10).
HTML-атрибут:
  • <gmp-map-3d center="lat,lng,altitude"></gmp-map-3d>
defaultLabelsDisabled
Тип: boolean optional
По умолчанию: false
Если true , метки карты по умолчанию не отображаются.
HTML-атрибут:
  • <gmp-map-3d default-labels-disabled></gmp-map-3d>
defaultUIDisabled
Тип: boolean optional
По умолчанию: false
Если true , все кнопки пользовательского интерфейса по умолчанию отключены. Не отключает клавиатуру и управление жестами.
HTML-атрибут:
  • <gmp-map-3d default-ui-disabled></gmp-map-3d>
heading
Тип: number optional
Компасный курс карты в градусах, где север равен нулю. При отсутствии наклона любой крен будет интерпретироваться как курс.
HTML-атрибут:
  • <gmp-map-3d heading="number"></gmp-map-3d>
maxAltitude
Тип: number optional
Максимальная высота над землей, которая будет отображаться на карте. Допустимое значение — от 0 до 63170000 метров (радиус Земли, умноженный на 10).
HTML-атрибут:
  • <gmp-map-3d max-altitude="number"></gmp-map-3d>
maxHeading
Тип: number optional
Максимальный угол курса (поворота) карты. Допустимое значение — от 0 до 360 градусов. minHeading и maxHeading представляют собой интервал <= 360 градусов, в котором будут разрешены жесты направления. minHeading = 180 и maxHeading = 90 позволят использовать заголовок в [0, 90] и заголовок в [180, 360] . minHeading = 90 и maxHeading = 180 позволят использовать заголовок в [90, 180] .
HTML-атрибут:
  • <gmp-map-3d max-heading="number"></gmp-map-3d>
maxTilt
Тип: number optional
Максимальный угол падения карты. Допустимое значение — от 0 до 90 градусов.
HTML-атрибут:
  • <gmp-map-3d max-tilt="number"></gmp-map-3d>
minAltitude
Тип: number optional
Минимальная высота над землей, которая будет отображаться на карте. Допустимое значение — от 0 до 63170000 метров (радиус Земли, умноженный на 10).
HTML-атрибут:
  • <gmp-map-3d min-altitude="number"></gmp-map-3d>
minHeading
Тип: number optional
Минимальный угол курса (поворота) карты. Допустимое значение — от 0 до 360 градусов. minHeading и maxHeading представляют собой интервал <= 360 градусов, в котором будут разрешены жесты направления. minHeading = 180 и maxHeading = 90 позволят использовать заголовок в [0, 90] и заголовок в [180, 360] . minHeading = 90 и maxHeading = 180 позволят использовать заголовок в [90, 180] .
HTML-атрибут:
  • <gmp-map-3d min-heading="number"></gmp-map-3d>
minTilt
Тип: number optional
Минимальный угол падения карты. Допустимое значение — от 0 до 90 градусов.
HTML-атрибут:
  • <gmp-map-3d min-tilt="number"></gmp-map-3d>
range
Тип: number optional
Расстояние от камеры до центра карты в метрах.
HTML-атрибут:
  • <gmp-map-3d range="number"></gmp-map-3d>
roll
Тип: number optional
Поворот камеры вокруг вектора обзора в градусах. Чтобы устранить неоднозначность, при отсутствии наклона любой поворот будет интерпретироваться как курс.
HTML-атрибут:
  • <gmp-map-3d roll="number"></gmp-map-3d>
tilt
Тип: number optional
Наклон вектора обзора камеры в градусах. Вектор обзора, смотрящий прямо вниз на Землю, будет иметь наклон в ноль градусов. Вектор обзора, направленный от земли, будет иметь наклон 180 градусов.
HTML-атрибут:
  • <gmp-map-3d tilt="number"></gmp-map-3d>
Beta addEventListener
addEventListener(type, listener[, options])
Параметры:
  • type : string Строка с учетом регистра, представляющая тип события, которое необходимо прослушивать.
  • listener : EventListener | EventListenerObject Объект, который получает уведомление. Это должна быть функция или объект с методом handleEvent.
  • options : boolean| AddEventListenerOptions optional См. параметры . Пользовательские события поддерживают только capture и passive .
Возвращаемое значение: void
Устанавливает функцию, которая будет вызываться всякий раз, когда указанное событие доставляется в цель. См. addEventListener.
flyCameraAround
flyCameraAround(options)
Параметры:
Возвращаемое значение: Нет
Этот метод вращает камеру вокруг заданного места в течение заданного времени, совершая за это время заданное количество оборотов.

По умолчанию камера вращается по часовой стрелке. Если для раундов задано отрицательное число, камера вместо этого будет вращаться против часовой стрелки.

Метод является асинхронным, поскольку анимация может начаться только после того, как карта загрузит минимальный объем. Метод возвращается после запуска анимации.

Если количество раундов равно нулю, вращения не произойдет, а анимация завершится сразу после запуска.
flyCameraTo
flyCameraTo(options)
Параметры:
Возвращаемое значение: Нет
Этот метод перемещает камеру параболически из текущего местоположения в заданное конечное местоположение в течение заданного времени.

Метод является асинхронным, поскольку анимация может начаться только после того, как карта загрузит минимальный объем. Метод возвращается после запуска анимации.
Beta removeEventListener
removeEventListener(type, listener[, options])
Параметры:
  • type : string Строка, определяющая тип события, для которого необходимо удалить прослушиватель событий.
  • listener : EventListener | EventListenerObject Прослушиватель событий обработчика событий, который необходимо удалить из целевого объекта события.
  • options : boolean| EventListenerOptions optional См . параметры.
Возвращаемое значение: void
Удаляет из цели прослушиватель событий, ранее зарегистрированный с помощью addEventListener. См. RemoveEventListener.
stopCameraAnimation
stopCameraAnimation()
Параметры: Нет
Возвращаемое значение: Нет
Этот метод останавливает любую запущенную анимацию полета. Камера остается там, где она находится в середине анимации; он не телепортируется в конечную точку.

Метод является асинхронным, поскольку анимация может запускаться или останавливаться только после того, как карта загрузит минимальный объем. Метод возвращается после остановки анимации.
gmp-animationend
function(animationEndEvent)
Аргументы:
  • animationEndEvent : Event
Это событие вызывается, когда заканчивается анимация полета. Это событие всплывает в дереве DOM.
gmp-centerchange
function(centerChangeEvent)
Аргументы:
  • centerChangeEvent : Event
Это событие вызывается при изменении свойства center Map3DElement.
gmp-click
function(clickEvent)
Аргументы:
Это событие вызывается при щелчке элемента Map3DElement .
gmp-headingchange
function(headingChangeEvent)
Аргументы:
  • headingChangeEvent : Event
Это событие вызывается при изменении свойства заголовка Map3DElement.
gmp-rangechange
function(rangeChangeEvent)
Аргументы:
  • rangeChangeEvent : Event
Это событие вызывается при изменении свойства диапазона Map3DElement.
gmp-rollchange
function(rollChangeEvent)
Аргументы:
Это событие вызывается при изменении свойства Roll Map3DElement.
gmp-steadychange
function(steadyChangeEvent)
Аргументы:
Это событие вызывается при изменении устойчивого состояния Map3DElement .
gmp-tiltchange
function(tiltChangeEvent)
Аргументы:
Это событие вызывается при изменении свойства наклона Map3DElement.

Интерфейс Map3DElementOptions

google.maps.maps3d . Map3DElementOptions Интерфейс google.maps.maps3d . Map3DElementOptions

Объект Map3DElementOptions, используемый для определения свойств, которые можно задать для Map3DElement.

bounds optional
Тип: LatLngBounds | LatLngBoundsLiteral optional
center optional
defaultLabelsDisabled optional
Тип: boolean optional
defaultUIDisabled optional
Тип: boolean optional
heading optional
Тип: number optional
maxAltitude optional
Тип: number optional
maxHeading optional
Тип: number optional
maxTilt optional
Тип: number optional
minAltitude optional
Тип: number optional
minHeading optional
Тип: number optional
minTilt optional
Тип: number optional
range optional
Тип: number optional
roll optional
Тип: number optional
tilt optional
Тип: number optional

Интерфейс FlyAroundAnimationOptions

google.maps.maps3d . FlyAroundAnimationOptions Интерфейс google.maps.maps3d . FlyAroundAnimationOptions

Параметры настройки анимации FlyCameraAround.

camera
Тип: CameraOptions
Центральная точка, на которую должна смотреть камера во время анимации орбиты. Обратите внимание, что заголовок карты будет меняться по мере движения камеры вокруг этой центральной точки.
durationMillis optional
Тип: number optional
Длительность анимации в миллисекундах. Это общая продолжительность анимации, а не продолжительность одного вращения.
rounds optional
Тип: number optional
Количество раундов вращения вокруг центра за заданную продолжительность. Это контролирует общую скорость вращения. Передача отрицательного числа в раунды приведет к вращению камеры против часовой стрелки вместо направления по часовой стрелке по умолчанию.

Интерфейс FlyToAnimationOptions

google.maps.maps3d . FlyToAnimationOptions Интерфейс google.maps.maps3d . FlyToAnimationOptions

Параметры настройки анимации FlyCameraTo.

endCamera
Тип: CameraOptions
Местоположение, на которое должна указывать камера в конце анимации.
durationMillis optional
Тип: number optional
Длительность анимации в миллисекундах. Длительность 0 телепортирует камеру прямо в конечное положение.

Интерфейс настроек камеры

google.maps.maps3d . CameraOptions Интерфейс google.maps.maps3d . CameraOptions

Объект CameraOptions, используемый для определения свойств, которые можно установить для объекта камеры. Объект камеры может быть чем угодно, имеющим положение камеры, например, текущим состоянием карты или будущим запрошенным состоянием анимации.

center optional
heading optional
Тип: number optional
range optional
Тип: number optional
roll optional
Тип: number optional
tilt optional
Тип: number optional

Класс SteadyChangeEvent

google.maps.maps3d . SteadyChangeEvent Класс google.maps.maps3d . SteadyChangeEvent

Это событие создается в результате мониторинга устойчивого состояния Map3DElement . Это событие всплывает в дереве DOM.

Этот класс расширяет Event .

Доступ осуществляется путем вызова const {SteadyChangeEvent} = await google.maps.importLibrary("maps3d") . См. раздел Библиотеки в Maps JavaScript API .

isSteady
Тип: boolean
Указывает, является ли Map3DElement устойчивым (т. е. весь рендеринг текущей сцены завершен) или нет.

Класс LocationClickEvent

google.maps.maps3d . LocationClickEvent Класс google.maps.maps3d . LocationClickEvent

Это событие создается при нажатии Map3DElement.

Этот класс расширяет Event .

Доступ осуществляется путем вызова const {LocationClickEvent} = await google.maps.importLibrary("maps3d") . См. раздел Библиотеки в Maps JavaScript API .

position
Тип: LatLngAltitude optional
Широта/долгота/высота, которая находилась под курсором в момент возникновения события. Обратите внимание, что на более грубых уровнях будут возвращены менее точные данные. Кроме того, для значения высоты может быть возвращена высота морского дна при нажатии на поверхность воды с более высоких позиций камеры. Это событие всплывает в дереве DOM.

Класс PlaceClickEvent

google.maps.maps3d . PlaceClickEvent Класс google.maps.maps3d . PlaceClickEvent

Это событие создается при нажатии Map3DElement.

Этот класс расширяет LocationClickEvent .

Доступ осуществляется путем вызова const {PlaceClickEvent} = await google.maps.importLibrary("maps3d") . См. раздел Библиотеки в Maps JavaScript API .

placeId
Тип: string
Идентификатор места объекта карты.
Наследовано: position
fetchPlace
fetchPlace()
Параметры: Нет
Возвращаемое значение: Promise < Place >
Получает Place для этого идентификатора места. В полученном объекте Place будет заполнено свойство id. Дополнительные поля впоследствии можно запросить с помощью Place.fetchFields() при условии обычного включения API Places и выставления счетов. Промис отклоняется, если при получении Place произошла ошибка.

Класс Marker3DElement

google.maps.maps3d . Marker3DElement Класс google.maps.maps3d . Marker3DElement

Показывает положение на 3D-карте. Обратите внимание, что position должна быть установлена ​​для отображения Marker3DElement .

Пользовательский элемент:
<gmp-marker-3d altitude-mode="absolute" collision-behavior="required" draws-when-occluded extruded label="string" size-preserved z-index="number"></gmp-marker-3d>

Этот класс расширяет HTMLElement .

Этот класс реализует Marker3DElementOptions .

Доступ осуществляется путем вызова const {Marker3DElement} = await google.maps.importLibrary("maps3d") . См. раздел Библиотеки в Maps JavaScript API .

Marker3DElement
Marker3DElement([options])
Параметры:
Создает Marker3DElement с указанными параметрами.
altitudeMode
Тип: AltitudeMode optional
По умолчанию: AltitudeMode.CLAMP_TO_GROUND .
Указывает, как интерпретируется компонент высоты положения.
HTML-атрибут:
  • <gmp-marker-3d altitude-mode="absolute"></gmp-marker-3d>
  • <gmp-marker-3d altitude-mode="clamp-to-ground"></gmp-marker-3d>
  • <gmp-marker-3d altitude-mode="relative-to-ground"></gmp-marker-3d>
  • <gmp-marker-3d altitude-mode="relative-to-mesh"></gmp-marker-3d>
collisionBehavior
Тип: CollisionBehavior optional
По умолчанию: CollisionBehavior.REQUIRED
Перечисление, определяющее, как должен вести себя Marker3DElement при столкновении с другим Marker3DElement или с метками базовой карты.
HTML-атрибут:
  • <gmp-marker-3d collision-behavior="required"></gmp-marker-3d>
  • <gmp-marker-3d collision-behavior="required-and-hides-optional"></gmp-marker-3d>
  • <gmp-marker-3d collision-behavior="optional-and-hides-lower-priority"></gmp-marker-3d>
drawsWhenOccluded
Тип: boolean optional
По умолчанию: false
Указывает, следует ли рисовать этот маркер или нет, когда он перекрыт. Маркер может быть перекрыт геометрией карты (например, зданиями).
HTML-атрибут:
  • <gmp-marker-3d draws-when-occluded></gmp-marker-3d>
extruded
Тип: boolean optional
По умолчанию: false
Указывает, следует ли подключать маркер к земле. Чтобы выдавить маркер, altitudeMode должен быть либо RELATIVE_TO_GROUND , либо ABSOLUTE .
HTML-атрибут:
  • <gmp-marker-3d extruded></gmp-marker-3d>
label
Тип: string optional
Текст, который будет отображаться этим маркером.
HTML-атрибут:
  • <gmp-marker-3d label="string"></gmp-marker-3d>
position
Расположение кончика маркера. Высота игнорируется в некоторых режимах и поэтому является необязательной.
sizePreserved
Тип: boolean optional
По умолчанию: false
Указывает, должен ли этот маркер сохранять свой размер независимо от расстояния до камеры. По умолчанию маркер масштабируется в зависимости от расстояния от камеры/наклона.
HTML-атрибут:
  • <gmp-marker-3d size-preserved></gmp-marker-3d>
zIndex
Тип: number optional
zIndex по сравнению с другими маркерами.
HTML-атрибут:
  • <gmp-marker-3d z-index="number"></gmp-marker-3d>
default
Любые пользовательские элементы, непосредственно добавленные в Marker3DElement будут помещены в слоты, однако для рисования маркеров будут использоваться только элементы типов HTMLImageElement , SVGElement и PinElement , остальные элементы будут игнорироваться.
HTMLImageElement и SVGElement должны быть заключены в