Как использовать режимы высоты

AltitudeMode – свойство, определяющее вертикальное размещение элемента карты. Определяет, как будет отрисован объект: относительно рельефа, относительно наземных объектов (например, зданий) или на абсолютной высоте над уровнем моря.

Свойство AltitudeMode определяет, где относительно поверхности Земли будут отрисовываться элементы, которые вы добавляете на 3D-карту, например маркеры, ломаные линии, многоугольники и модели. Кроме того, AltitudeMode определяет положение камеры во время анимаций flyTo и flyAround.

В этом руководстве рассказывается, как эффективно использовать AltitudeMode и какие факторы влияют на отрисовку элементов.

Цифровые модели рельефа

Размещение объектов регулируется двумя базовыми цифровыми моделями рельефа (DEM), доступными в API:

  • Цифровая модель рельефа (ЦМР) / "Земля". Вид "голой земли", показывающий высоту подстилающей местности с удаленными наземными объектами.
  • Цифровая модель поверхности (ЦМП) / "сетка". Представление поверхности, включающее высоту рельефа и наземные объекты, такие как здания и деревья.

На изображении ниже показана разница между ЦМР и ЦМП для городской территории.

Изображение, на котором рядом показаны виды Эйфелевой башни и Парижа в DTM и DSM

AltitudeMode варианта

Выбор AltitudeMode определяет, как значение высоты объекта (если оно указано) интерпретируется относительно цифровых моделей рельефа.

  • ABSOLUTE: отображает объект относительно среднего уровня моря, рассчитанного с помощью EGM96.
  • CLAMP_TO_GROUND – объект отображается непосредственно на цифровой модели рельефа (на земле) без учета заданной высоты и в соответствии с рельефом.
  • RELATIVE_TO_GROUND – объект отображается относительно поверхности цифровой модели рельефа (земли).
  • RELATIVE_TO_MESH: объект отрисовывается относительно ЦМП (сетки) – самой высокой поверхности, включая землю, здания и воду.

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

Значения высоты в относительном режиме

При использовании относительных режимов (RELATIVE_TO_GROUND или RELATIVE_TO_MESH) указанное значение высоты является смещением относительно выбранной базовой поверхности, а не фиксированной высотой над уровнем моря. Например, если указать высоту 100, объект будет размещен на высоте 100 м над ЦМР или ЦМП.

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

Дальнейшие действия